Son Satıra Göre Sıralama Yapma

Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhabalar üstadlar

Dosyamın MAAS ODEME LISTESI sayfasında makro kaydet uygulamasıyla alfabetik ve giriş tarihine göre sıralama yapıyorum ancak listeye eklenen ve çıkanlar olduğu için belirli bir satır sayısı yazamıyorum. Bu yüzden son satırı 200 olarak baz alıyorum. Bu şekilde boş satırları da sıralamaktadır. Hata yapmaması için sizden ricam önce değer olan son satırı bulup sonra sıralamayı yapacak kodu yazabilir misiniz?

Kullandığım Kodlar:
Kod:
Sub MAAS_ODEME_LISTESI_Alfabetik_Sıralama()
'
' MAAS_ODEME_LISTESI_Alfabetik_Sıralama Makro
'

'
    ActiveWindow.SmallScroll Down:=-6
    Rows("4:200").Select
    ActiveWorkbook.Worksheets("MAAS_ODEME_LISTESI").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("MAAS_ODEME_LISTESI").Sort.SortFields.Add2 Key:=Range _
        ("C4:C200"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("MAAS_ODEME_LISTESI").Sort
        .SetRange Range("A4:Q200")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
Sub MAAS_ODEME_LISTESI_GirisTarihSirali()
'
' MAAS_ODEME_LISTESI_GirisTarihSirali Makro
'

'
    Rows("4:200").Select
    ActiveWorkbook.Worksheets("MAAS_ODEME_LISTESI").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("MAAS_ODEME_LISTESI").Sort.SortFields.Add2 Key:=Range _
        ("J4:J200"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("MAAS_ODEME_LISTESI").Sort
        .SetRange Range("A4:Q200")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
 

Ekli dosyalar

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
Merhaba

Bunu deneyiniz.
C++:
Sub sirala()
ssat = Range("A1048576").End(3).Row
Range("A2:C" & ssat).Sort Key1:=[A2]
End Sub
 
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhaba

Bunu deneyiniz.
C++:
Sub sirala()
ssat = Range("A1048576").End(3).Row
Range("A2:C" & ssat).Sort Key1:=[A2]
End Sub
İlgi ve yardımınız için teşekkür ederim.
Kod alfabetik sıralıyor ancak bir önceki yani giriş tarihi sırasına göre sıralamak için ya da geri alabilmek için kod ekleyebilir misiniz?

Kod revize:
Kod:
Sub MAAS_ODEME_LISTESI_sirala()
ssat = Range("A1048576").End(3).Row
Range("A4:K" & ssat).Sort Key1:=[A4]
End Sub
 

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
İlgi ve yardımınız için teşekkür ederim.
Kod alfabetik sıralıyor ancak bir önceki yani giriş tarihi sırasına göre sıralamak için ya da geri alabilmek için kod ekleyebilir misiniz?

Kod revize:
Kod:
Sub MAAS_ODEME_LISTESI_sirala()
ssat = Range("A1048576").End(3).Row
Range("A4:K" & ssat).Sort Key1:=[A4]
End Sub
Merhaba
Sizin yazdığınız gibi, kod A Sütununa göre sıralama yapıyor, Başka sütuna göre sıralanacaksa Key1:=[A4] burayı değiştirin.
Giriş tarihi hangi sütunda? biz değil siz biliyorsunuz.
Resme bakarak dosya mı hazırlayalım? Altın üyesiniz, basit bir örnek ekleyebilirsiniz.
 
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhaba
Sizin yazdığınız gibi, kod A Sütununa göre sıralama yapıyor, Başka sütuna göre sıralanacaksa Key1:=[A4] burayı değiştirin.
Giriş tarihi hangi sütunda? biz değil siz biliyorsunuz.
Resme bakarak dosya mı hazırlayalım? Altın üyesiniz, basit bir örnek ekleyebilirsiniz.
Kod:
Sub MAAS_ODEME_LISTESI_GirisTarihSirali()
ssat = Range("A1048576").End(3).Row
Range("A4:K" & ssat).Sort Key1:=[J4]
End Sub
Kodu bu şekilde çalıştırdım. Ellerinize sağlık. Allah razı olsun. Saygılar selamlar...
 
Son düzenleme:

uzmanamele

Uzman
Uzman
Katılım
26 Eylül 2007
Mesajlar
9,421
Excel Vers. ve Dili
excel 2010
Kod:
Sub MAAS_ODEME_LISTESI_GirisTarihSirali()
ssat = Range("A1048576").End(3).Row
Range("A4:K" & ssat).Sort Key1:=[J4]
End Sub
Kodu bu şekilde çalıştırdım. Ellerinize sağlık. Allah razı olsun. Saygılar selamlar...
Merhaba
Bu tek tırnak işareti makro kaydet ile otomatik geliyor.
Sağında bir kod satırı olsa bile bunu not düşülmüş metin gibi düşünebilirsiniz.
' ile başlayan satırlar yeşil renkte olur, metindir. ' yerine Rem ile başlayan satır da aynı şekildedir.
Kısacası ' ile başlayan satırları silebilirsiniz.
 
Katılım
25 Mayıs 2010
Mesajlar
480
Excel Vers. ve Dili
Office 2019
64bit
Tr
Win 10
Altın Üyelik Bitiş Tarihi
12-07-2024
Merhaba
Bu tek tırnak işareti makro kaydet ile otomatik geliyor.
Sağında bir kod satırı olsa bile bunu not düşülmüş metin gibi düşünebilirsiniz.
' ile başlayan satırlar yeşil renkte olur, metindir. ' yerine Rem ile başlayan satır da aynı şekildedir.
Kısacası ' ile başlayan satırları silebilirsiniz.
Açıklayıcı bilgilendirmeniz için teşekkürler hocam.
 
Üst