walabi
Altın Üye
- Katılım
- 22 Eylül 2012
- Mesajlar
- 784
- Excel Vers. ve Dili
-
excel 2010
excel 2013
- Altın Üyelik Bitiş Tarihi
- 06-08-2025
Merhaba,
Aşağıdaki fonksiyon ile listboxlar üzerinde belirlenen sütuna göre sıralama yaptırılıyor, ama tek sütun. Bunu iki sütun için ya da birden fazla sütun için geliştirmek mümkün müdür?
ListBox1.List = Diz(ListBox1.List, 2) ' 2. Sütuna göre Sıralama Yapmakta
Aşağıdaki fonksiyon ile listboxlar üzerinde belirlenen sütuna göre sıralama yaptırılıyor, ama tek sütun. Bunu iki sütun için ya da birden fazla sütun için geliştirmek mümkün müdür?
ListBox1.List = Diz(ListBox1.List, 2) ' 2. Sütuna göre Sıralama Yapmakta
Kod:
Private Function Diz(ByVal Dizim As Variant, Stn As Integer) As Variant
Dim i, j, k As Long
Dim Tmp As Variant
Stn = Stn - 1
For i = LBound(Dizim, 1) To UBound(Dizim, 1)
For j = i + 1 To UBound(Dizim, 1)
If Dizim(i, Stn) > Dizim(j, Stn) Then
For k = LBound(Dizim, 2) To UBound(Dizim, 2)
Tmp = Dizim(j, k)
Dizim(j, k) = Dizim(i, k)
Dizim(i, k) = Tmp
Next
End If
Next
Next
Diz = Dizim
End Function