walabi
Altın Üye
- Katılım
- 22 Eylül 2012
- Mesajlar
- 671
- Excel Vers. ve Dili
-
excel 2010
excel 2013
- Altın Üyelik Bitiş Tarihi
- 06-08-2025
Merhaba ,
Aşağıdaki bulduğum kodlar dizilerde bir fonksiyon ve eğer yanlış anlamadıysam sütun verilerinde sıralama yaptırmak amacıyla oluşturulmuş, ya da ben bu amaçla kullanıyorum. Dizilerin mantığını anlamadığım için şöylesi birşey sormam gerekti.
Aşağıdaki tek satırlık kod ise hangi sütunda sıralama yapmak istediğimizi belirliyor anladığım kadarı ile ;
ListBox1.List = Diz(ListBox1.List, TextBox3.Value) burada textbox3.value yerine 1 yazarsam birinci sütunu 2 yazarsam ikinci sütunu sıralamakta.
Yapmayı istediğim ve sormaya çalıştığım şey ise şu;
Ben listboxa additem ile sütun başlığı alıyorum. Bu sebeple tarih sıralaması yaptırmak istediğimde hata alıyorum. Yanlış değilsem sütunun ilk verisi METİN ifade yani Tarih şeklinde bir ifade olduğu için hata alıyorum.
İlgili fonksiyonun ikinci satırdan itibaren sıralama yapmasını nasıl sağlayabilirim. Öncelikle mümkün müdür, mümkünse fonksiyonda nereyi düzeltmem gerekiyor.
Aşağıdaki bulduğum kodlar dizilerde bir fonksiyon ve eğer yanlış anlamadıysam sütun verilerinde sıralama yaptırmak amacıyla oluşturulmuş, ya da ben bu amaçla kullanıyorum. Dizilerin mantığını anlamadığım için şöylesi birşey sormam gerekti.
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
If CDate(Dizim(i, Stn)) > CDate(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
ListBox1.List = Diz(ListBox1.List, TextBox3.Value) burada textbox3.value yerine 1 yazarsam birinci sütunu 2 yazarsam ikinci sütunu sıralamakta.
Yapmayı istediğim ve sormaya çalıştığım şey ise şu;
Ben listboxa additem ile sütun başlığı alıyorum. Bu sebeple tarih sıralaması yaptırmak istediğimde hata alıyorum. Yanlış değilsem sütunun ilk verisi METİN ifade yani Tarih şeklinde bir ifade olduğu için hata alıyorum.
İlgili fonksiyonun ikinci satırdan itibaren sıralama yapmasını nasıl sağlayabilirim. Öncelikle mümkün müdür, mümkünse fonksiyonda nereyi düzeltmem gerekiyor.