• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

vba da son dolu hücreye inme işlemi hk.

Katılım
12 Şubat 2019
Mesajlar
115
Excel Vers. ve Dili
Vera. 10 Dil Türkçe
merhaba,
sayfada sadece başlık varsa başlık satırında kalsın istiyorum seçili hücrenin ama aşağıdaki kodu yazınca sayfada sadece başlık olsa bile excelin en son hücresine iniyor.
konu hakkında yardımlarınızı rica ederim.

not: sayfada filtrede var. A1 hücresi filtreli.

Range("A1").Select
Selection.End(xlDown).Select
i33 = ActiveCell.Row
 
Son dolu satırın numarasını bulmak için

i33 = Cells(Rows.Count,"A").End(3).Row

satırı yeterlidir.
 
3, yukarı doğru ilk dolu hücreyi gösteriyor. Daha açık ifadeyle o kodun tamamı şu anlama geliyor:
A sütunundaki en son yani en alttaki hücreye git.
O hücredeyken CTRL tuşunu basılı tut ve aynı anda yukarı Ok tuşuna bas.

1, 2 ve 4 de var; sırasıyla Sol, Sağ ve aşağı yönleri gösteriyor.
 
3, yukarı doğru ilk dolu hücreyi gösteriyor. Daha açık ifadeyle o kodun tamamı şu anlama geliyor:
A sütunundaki en son yani en alttaki hücreye git.
O hücredeyken CTRL tuşunu basılı tut ve aynı anda yukarı Ok tuşuna bas.

1, 2 ve 4 de var; sırasıyla Sol, Sağ ve aşağı yönleri gösteriyor.
Merhaba Yusuf bey. denedim ama olmadı.
sayfamda 4 satır dolu ama copy deyince sadece başlık kısmını aldı vba.
bu sırada sayfada filtre de var.
 
Neyi denediniz de olmadı anlamadım.
 
Neyi denediniz de olmadı anlamadım.
Range("A1").Select
Selection.End(xlDown).Select
i33 = ActiveCell.Row

kodu yerine

i33 = Cells(Rows.Count,"A").End(3).Row

kodunu yazdım.
Ama bu kodları yazmadan önce vba da filtreleme işlemi yapmıştım.
acaba o yüzden mi olmadı?

Filtrelemeden sonra 1. 5. 7. 9. satırlar dolu olarak geldi. ama

i33 = Cells(Rows.Count,"A").End(3).Row

kodunu yazıp

Set Source = Range("A1:AZ" & i33).SpecialCells(xlCellTypeVisible)
Source.Copy

yapınca sadece başlık satırını kopyaladı.
 
Range("A1").Select
Selection.End(xlDown).Select
i33 = ActiveCell.Row

kodu yerine

i33 = Cells(Rows.Count,"A").End(3).Row

kodunu yazdım.
Ama bu kodları yazmadan önce vba da filtreleme işlemi yapmıştım.
acaba o yüzden mi olmadı?

Filtrelemeden sonra 1. 5. 7. 9. satırlar dolu olarak geldi. ama

i33 = Cells(Rows.Count,"A").End(3).Row

kodunu yazıp

Set Source = Range("A1:AZ" & i33).SpecialCells(xlCellTypeVisible)
Source.Copy

yapınca sadece başlık satırını kopyaladı.
çözdüm hocam teşekkür ederim.
kodu aşağıdaki gibi uyguladım.

Range("a" & Cells(65536, 3).End(xlUp).Row).Select
i33 = ActiveCell.Row


Set Source = Range("A1:AZ" & i33).SpecialCells(xlCellTypeVisible)
Source.Copy
 
Doğrudan

Range("A1:AZ" & i33).Copy

kullansanız olmuyor mu?
 
Geri
Üst