ListBox ta Artan Sıralama

Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
Bir sayfadaki verileri ListBox a aldığımız da ListBoxta bu verileri alfabetik sıralanmasını nasıl yapabilirim
 

Mahmut Kök

Özel Üye
Katılım
14 Temmuz 2006
Mesajlar
878
Excel Vers. ve Dili
Excel 2007 - Türkçe
Bir sayfadaki verileri ListBox a aldığımız da ListBoxta bu verileri alfabetik sıralanmasını nasıl yapabilirim

Önce sayfada sıralatıp, sonra liste kutusuna alabilirsiniz. Listview'de sıralama var; ancak listbox'ta sıralı verinin en kolay yolu, sayfada sıralamaktır.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Ekteki dosyayı inceleyiniz.

Varsayımlar :
Veriler : B2:B100 aralığında
Malzemeler : Userform, Listbox1 ve CommandButton1
olmak kaydıyla aşağıdaki kodlar kullanılabilir.

Kod:
Private Sub CommandButton1_Click()
For i = 0 To ListBox1.ListCount - 1
    For j = i + 1 To ListBox1.ListCount - 1
        If ListBox1.List(i) > ListBox1.List(j) Then
           x = ListBox1.List(i)
           ListBox1.List(i) = ListBox1.List(j)
           ListBox1.List(j) = x
        End If
    Next j
Next i
End Sub
'----------------------------
Private Sub UserForm_Initialize()
ListBox1.List = Range("B2:B100").Value
End Sub
 
Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
Yeni kayıt yapınca sayfadaki sıralama kayboluyor

Sayın Hocam Yeni kayıt yapınca sayfadaki sıralama kayboluyor.Sayfa 1 e kayıt yapılıyor.Sayfa 2 ye raporlama olarak aktarılıyor.Aktarılan bilgiler ListBox ta sıralanmış olarak gözüküyor ama en son yapılan kayıt en altta gözüküyor.Kayıt butonuna tıklanınca yada listboxlu formda raporlama butonuna tıklanınca sıralayacak bir kod gerekiyor.
 
Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
Yardım....

Sayın Ferhat Hocam eklediğiniz çalışmayı inceledim ve dosyama uyguladım ama hata veriyor.Birde raporlama sayfasındaki bilgilerin bölümü (A:p) SÜTUN ARALIĞINDA ve D sütununa göre sıralama yapılacak.
 
Katılım
29 Aralık 2006
Mesajlar
80
Excel Vers. ve Dili
visualbasic
Dosyayı eklemedim çünkü limit üstü ağır bir dosya
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
O zaman; Mahmut bey'in de dediği gibi, Listview kullanmanızda fayda var.

Çünkü, 16 sütun ve değişken satırlı bir diziyi sıralamaya sokmak, programınızın oldukça yavaşlamasına sebep olabilir.
 
Üst