• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

combobox ta verileri siralama

Katılım
26 Aralık 2008
Mesajlar
1,145
Excel Vers. ve Dili
EXCEL 2016 TÜRKÇE
Merhaba arkadaşlar aşağıdaki kod da verileri nasıl sıralayabilirim kolay gelsin.
Private Sub Worksheet_Activate()
Dim sat, s As Integer
ComboBox1.Clear
For sat = 2 To Sayfa24.Cells(65536, "I").End(xlUp).Row
If Not WorksheetFunction.CountIf(Sayfa24.Range("I2:I" & sat), Sayfa24.Cells(sat, "I")) > 1 Then
ComboBox1.AddItem
ComboBox1.List(s, 0) = Sayfa24.Cells(sat, "I")
s = s + 1
End If: Next
End Sub
 
Eğer verileri sayfada sıralama şansınız varsa kullandığınız kod işe yarayabilir.

Yoksa farklı yöntemle kod içinde sıralanması gerekir.
 
Aşağıdaki kodlar ile yapılabilir .

Kod:
Private Sub Worksheet_Activate()
Dim list As Object
Set list = CreateObject("System.Collections.ArrayList")
Set Rng = Sheets("Sayfa24").Range("I2", Cells(Sheets("Sayfa24").Rows.Count, "I").End(xlUp))
ComboBox1.Clear
For Each rCell In Rng.Cells
    If Not list.Contains(rCell.Value) Then
        dd = (rCell.Value)
        If Not WorksheetFunction.CountIf(Sheets("Sayfa24").Range("I2", Cells(rCell.Row, "I")), (rCell.Value)) > 1 Then
            list.Add (rCell.Value)
        End If
    End If
Next rCell
list.Sort
ComboBox1.list = list.ToArray()
Set list = Nothing
End Sub
 
Sayın
EmrExcel16
Kod aşağıdaki satırda hata verdi
Set Rng = Sheets("Sayfa24").Range("I2", Cells(Sheets("Sayfa24").Rows.Count, "I").End(xlUp))
 
"Sayfa24" adında bir sayfanız var mı ? yada "Sayfa24" yazan yerleri ComboBox 'ın veri alacağı yere göre değiştiriniz.

"Sayfa24" adlı sayfayı sizin ilk mesajda verdiğiniz kodlardan yola çıkarak yazmıştım.
 
Dosyanızı sıkıştırmadan veya zip olarak sıkıştırıp tekrar yükler misiniz . RAR uzantıları açamıyorum.
 
Dosyanızı açamadım ama , birde bu şekilde deneyin.
Kod:
Private Sub Worksheet_Activate()
Dim list As Object
Set list = CreateObject("System.Collections.ArrayList")
Set Rng = Sheets("Sayfa24").Range("I2", Sheets("Sayfa24").Cells(Sheets("Sayfa24").Rows.Count, "I").End(xlUp))
ComboBox1.Clear
For Each rCell In Rng.Cells
    If Not list.Contains(rCell.Value) Then
        dd = (rCell.Value)
        If Not WorksheetFunction.CountIf(Sheets("Sayfa24").Range("I2", Sheets("Sayfa24").Cells(rCell.Row, "I")), (rCell.Value)) > 1 Then
            list.Add (rCell.Value)
        End If
    End If
Next rCell
list.Sort
ComboBox1.list = list.ToArray()
Set list = Nothing
End Sub
 
zipli gönderemiyorum excel olarak bir çalışma gönderdim.
 

Ekli dosyalar

Son gönderdiğim kodları denediniz mi ? Aynı hatayı veriyor mu ?
 
Birde gönderdiğiniz dosyada ay isimleri var bunlar alfabetik olarak sıralanırsa , ay sıralaması karışacak , siz bu şekilde bir şey mi istiyorsunuz onu anlamadım.
 
ben 1000 satıra yakın excel formatın da veri çekiyorum bu çektiğim verileri kopyala yapıştır la dosyamın sayfa1 e yapıştırıp kombodan aya göre veri alıyorum.
 
Veriler alfabetik sıralanabilir. Bunda sıkıntı yok. Fakat ay seçimi kutusunda bu sıralama ne kadar mantıklı olur orası soru işareti.

Bunun yerine ComboBox'a direk 12 aylık liste yüklenebilir. Tabi ki tercih meselesi...
 
teşekkür ederim
 
Geri
Üst