DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Aşağıdaki gibi deneyiniz.
Kod bende çalıştı. Sadece sayısal sıralama olayını düzelttim.
Kod:] Korhan Hocam, "veri" isimli sayfamın A1:A20 satırlarından Combobox1'e aldığım değerler bu kod ile alfabetik sıralanmıyor, sayfa ismi, Combobox ismi, hücre adresi gibi değerleri değiştirdim. Aşağıdaki gibi yani. [CODE]Private Sub ComboBox1_Enter() Dim a As Variant, hcr As Range, i As Long, j As Long, x As Variant, pk As Worksheet ComboBox1.Clear Set pk = Sheets("veri") With CreateObject("Scripting.Dictionary") .comparemode = vbTextCompare For Each hcr In pk.Range("a2:a" & pk.Cells(20, "a").End(xlUp).Row) If Not .exists(hcr.Value) Then .Add hcr.Value, Nothing End If Next hcr a = .keys End With For i = LBound(a) To UBound(a) - 1 For j = i + 1 To UBound(a) If a(i) > a(j) Then x = a(j) a(j) = a(i) a(i) = x End If Next j Next i On Error Resume Next ComboBox1.List = a ComboBox1.ListIndex = 0 End Sub
Selamlar,
Alternatif olarak ekteki örnek dosyayı incelermisiniz.
Kod:Option Explicit Private Sub UserForm_Initialize() Dim X As Long Columns(256).Clear Columns(1).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("IV1"), Unique:=True Columns(256).Sort Key1:=Range("IV1"), Order1:=xlAscending, Header:=xlGuess, _ OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal For X = 2 To [IV65536].End(3).Row ComboBox1.AddItem Cells(X, 256) Next Columns(256).Clear End Sub