Sadece Dolu Hücreleri Değer Olarak Kopyalama

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,442
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Aşağıdaki kod işinizi görür mü?

Kod:
Sub Kopyala()
    Columns("A:F").Copy
    Worksheets("Sayfa2").Range("A1").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
End Sub
Kod A-F ve arasındaki tüm kolonları kopyalayıp, Sayfa2 de A1 hücresinden itibaren sadece değerleri yapıştırıyor.
 
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
Sadece kopyalasa .Ben istediğim dosyaya yapıştırma yapsam
 
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
Sayın Dalgalıkur.Kopyalama A:F hücresinin tamamını kopyalıyor.Sadece dolu hücreleri kopyalayacak
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,070
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki gibi deneyin:

Kod:
Sub kopya()
sona = Cells(Rows.Count, "A").End(3).Row
sonb = Cells(Rows.Count, "B").End(3).Row
sonc = Cells(Rows.Count, "C").End(3).Row
sond = Cells(Rows.Count, "D").End(3).Row
sone = Cells(Rows.Count, "E").End(3).Row
sonf = Cells(Rows.Count, "F").End(3).Row
son = WorksheetFunction.Max(sona, sonb, sonc, sond, sone, sonf)
Range("A1:F" & son).Copy
End Sub
 
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
Son dolu hücreye kadar kopyalasa .Makro A1 İle F hücre aralığının tamamını kopyalıyor. A1 ile F sütün da Son dolu satıra kadar kopyalama olacak.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,070
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Verdiğim kod zaten son dolu satıra kadar kopyalama yapıyor, denediniz mi? Koddaki sona, sonb vs her sütunun son dolu satırını buluyor, ve son verisi de bunlardan en büyüğünü yani sayfadaki en son dolu satırı buluyor.

Örnek dosyanızda kodu çalıştırdığımda 9983. satıra kadar kopyaladı. B9983 hücresini dolu görüyor. Hatta 358. satırdan itibaren muhtemelen aşağı doğru B sütununu dolu görüyor. Onları seçip içeriğini DEL ile sildiğimde bu sefer de 9105'e kadar kopyalıyor. C9105 ve D9105 dolu çünkü.

Kısacası verileriniz her ne kadar boş görünse de hücreler dolu göründüğü için bu sorun çıkıyor. Dolu görünen ama aslında boş olan hücreleri del ile silerseniz muhtemelen doğru çalışacaktır.
 
Katılım
9 Ekim 2009
Mesajlar
1,626
Excel Vers. ve Dili
türkçe
2003
Aynen dediğiniz gibi.Dolu hücreleri sildiğimde oldu.Çok teşekkür ederim.
 
Üst