comboboxta alfabetik sıralama

Katılım
19 Ocak 2006
Mesajlar
154
bir harf yazıp yön tuşu ile bulmaya kalkışınca tüm sütundaki bilgileri satır satır gösteriyor.
oysaki ben comboboxta bir harf yazıp o harfle ilgili kelimeleri aşağı-yukarı tuşları ile bulabilir miyiz. ( alfabetik sıralayabilir miyiz ).
 
Katılım
17 Eylül 2005
Mesajlar
156
Excel Vers. ve Dili
Office 2003 - Türkçe
bir harf yazıp yön tuşu ile bulmaya kalkışınca tüm sütundaki bilgileri satır satır gösteriyor.
oysaki ben comboboxta bir harf yazıp o harfle ilgili kelimeleri aşağı-yukarı tuşları ile bulabilir miyiz. ( alfabetik sıralayabilir miyiz ).
Eklemiş olduğunuz dosyayı download edip açmayı denermisiniz. Thaf sembollerden oluşan bir excel sayfası açılıyor.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Aşağıdakileri; Userformun kod sayfasına kopyalayınız veya örneği inceleyiniz.

Kod:
Private Sub UserForm_Initialize()
Set kolleksiyon = New Collection
Set Sh = Sheets("Sayfa2")
[COLOR=green]'Sayfa üzerindeki bilgileri Collection nesnesine aktarılması[/COLOR]
For i = 2 To Sh.Cells(65536, 1).End(xlUp).Row
    If Sh.Cells(i, 1) <> "" Then: kolleksiyon.Add Sh.Cells(i, 1), Sh.Cells(i, 1)
Next i
[COLOR=green]'Collection nesnesinin kendi içinde sıralanması[/COLOR]
For i = 1 To kolleksiyon.Count - 1
    For j = i + 1 To kolleksiyon.Count
[COLOR=green]      'Collection nesnesinin her elemanı kendinden sonra gelen elemanla karşılaştırılıyor[/COLOR]
        If kolleksiyon(i) > kolleksiyon(j) Then
[COLOR=green]      'Eğer bu eleman bir sonraki elemandan büyükse[/COLOR]
           Eleman = kolleksiyon(j)
[COLOR=green]         'Sonra gelen elemanı bir yerde tut[/COLOR]
           kolleksiyon.Remove j
[COLOR=green]         'Kolleksiyonun içindeki, sonra gelen elemanı sil[/COLOR]
           kolleksiyon.Add Eleman, Eleman, i
[COLOR=green]         'Kolleksiyona; bir yerde tuttuğun elemanı, koleksiyondaki "i".elemanın önüne yerleştir[/COLOR]
        End If
    Next j
Next i
[COLOR=green]'Sıralanmış koleksiyon combobox'a ilave ediliyor[/COLOR]
For Each Eleman In kolleksiyon
    UserForm1.ComboBox1.AddItem Eleman
Next Eleman
End Sub
 
Son düzenleme:
Üst