• DİKKAT

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

Excelde kopyalama

Katılım
20 Temmuz 2016
Mesajlar
15
Excel Vers. ve Dili
Excel 2007
Excel 2010
Merhaba Arkadaslar

Resimdeki D sütunun daki 1 ve üstü rakamların olduğu satırı sayfa 2ye nasıl kopyalayabilirim.Boş olan satırları da görmemesi gerek.
Böyle bir makro var mıdır?Biraz araştırma yaptım ama istediğim gibi bir makro bulamadım.
Yardımınız için teşekkürler.

http://i.hizliresim.com/1dA35D.png
 
Aşağıdaki kodları bir modüle kopyalayıp deneyiniz:

Kod:
Sub aktar()
For i = 5 To Cells(Rows.Count, "D").End(3).Row
    If Cells(i, "D") >= 1 Then
        Rows(i).Copy Sheets("Sayfa2").Range("A" & Sheets("Sayfa2").Cells(Rows.Count, "D").End(3).Row + 1)
    End If
Next
End Sub
 
Aşağıdaki kodları bir modüle kopyalayıp deneyiniz:

Kod:
Sub aktar()
For i = 5 To Cells(Rows.Count, "D").End(3).Row
    If Cells(i, "D") >= 1 Then
        Rows(i).Copy Sheets("Sayfa2").Range("A" & Sheets("Sayfa2").Cells(Rows.Count, "D").End(3).Row + 1)
    End If
Next
End Sub

Ellerine sağlık ama ben çalıştıramadım.
 
Kodları kopyalayın.
Dosyanızda Alt+F11 yapın
Açılan sayfada Insert menüsünden Module'yi seçin
Açılan sayfaya kodları yapıştırın
Normal dosyanıza geçin
Dosyanıza bir şekil, düğme, nesne ekleyin
Eklediğinize sağ tıklayıp makro ata deyin
Aktar Makrosunu seçin
Artık o düğmeye/şekle bastığınızda makro çalışacaktır
Dosyanızı kaydederken "Makro içerebilen excel dosyası" olarak kaydetmeyi unutmayın.
 
Kodları kopyalayın.
Dosyanızda Alt+F11 yapın
Açılan sayfada Insert menüsünden Module'yi seçin
Açılan sayfaya kodları yapıştırın
Normal dosyanıza geçin
Dosyanıza bir şekil, düğme, nesne ekleyin
Eklediğinize sağ tıklayıp makro ata deyin
Aktar Makrosunu seçin
Artık o düğmeye/şekle bastığınızda makro çalışacaktır
Dosyanızı kaydederken "Makro içerebilen excel dosyası" olarak kaydetmeyi unutmayın.


Çok teşekkür ederim ellerinize sağlık.Birsey daha isteyebilir miyim.Şuanki kod cok güzel ama 2 kere tıkladıgımda altına bir kopyasını atıyor.Şöyle birsey mümkünmüdür.Bir kere tıklandığında uyarı mesajı versin ve sayfa2 deki veri varsa onu silip son tıklandığındaki veri kopyalansın böyle birsey mümkünmüdür?

Teşekkürler
 
Son düzenleme:
Aşağıdaki şekilde deneyin:
Kod:
Sub aktar()
uyarı = MsgBox("Eski veriler silinsin mi?", vbYesNo)
If uyarı = vbYes Then
    Sheets("Sayfa2").Range("A2:D" & Sheets("Sayfa2").Cells(Rows.Count, "D").End(3).Row).ClearContents
End If
For i = 5 To Cells(Rows.Count, "D").End(3).Row
    If Cells(i, "D") >= 1 Then
        Rows(i).Copy Sheets("Sayfa2").Range("A" & Sheets("Sayfa2").Cells(Rows.Count, "D").End(3).Row + 1)
    End If
Next
End Sub

Yalnız son mesajınızı ilk gördüğümde soru sormamış, teşekkür etmiştiniz. Ben de sorun çözüldü diye bir daha bu başlığa bakmadım. Böyle durumlarda mesajınızı düzenlemek yerine yeni mesaj yazarsanız sorunuzu görmemiz ve cevap verme ihtimalimiz artar.
 
Haklısınız yer kaplamaması için düzenle yapmıştım.Sağdan soldan buldum az araştırma yapınca ama sizin makronuz daha güzel ve daha verimli olmuş.Tekrardan teşekkür ederim.Sağolun
 
Merhaba Yusuf Bey,

Sizin yazdığınız kodu ben geliştirmeye çalıştım kendimce ama olmadı yapmak istediğim sey sayfa 2 deki 1.satır haric ve a sütunundan z sütununa kadar silinmesi kod aşagıdadır.


Sub sayfa2()
uyarı = MsgBox("Eski veriler silinsin mi?", vbYesNo)
If uyarı = vbYes Then
Sheets("sayfa2").Range("A2:A20:B2:B20:C2:C20:D2:D20:E2:E20:F2:F20:G2:G20:H2:H20:I2:I20:J2:J20:K2:K20:L2:L20:M2:M20:N2:N20:O2:O20:P2:P20:R2:R20:S2:S20:T2:T20:U2:U20:V2:V20:W2:W20:X2:X20:2:20:Z2:Z20" & Sheets("sayfa2").Cells(Rows.Count, "Z").End(3).Row).ClearContents
End If
For i = 5 To Cells(Rows.Count, "Z").End(3).Row
If Cells(i, "Z") >= 1 Then
Rows(i).Copy Sheets("sayfa2").Range("A" & Sheets("sayfa2").Cells(Rows.Count, "Z").End(3).Row + 1)
End If
Next
End Sub
 
Benim kodda "A2: D" yerine "A2:Z" yazmanız yeterli olur muhtemelen.
 
MALESEF OLMUYOR GENE TÜM LİSTEYİ SİLİYOR Z YERİNE Y DENEDİM BU SEFER Z SUTÜN SİLİNMEDİĞİ İÇİN ALTINA ATIYOR ÇOK TUHAF BİRSEY OLDU :d
 
Sizin yazdığınız kodu ben geliştirmeye çalıştım kendimce ama olmadı yapmak istediğim sey sayfa 2 deki 1.satır haric ve a sütunundan z sütununa kadar silinmesi kod aşagıdadır.
Bu ifadenizde zaten tüm listenin silinmesini istemiyor musunuz? Benim kod A2: D iken A2'den itibaren D sütunundaki son dolu hücreye kadar siliyor. Örneğin D sütununda son dolu satır 52 ise A2: D52 arasını siliyor.

A2:Z olduğunda da yine D sütununda son dolu satırı buluyor ve D'de son dolu satır 52 ise bu sefer A2:Z52 arasını siliyor.

Örnek bir dosyayı dosya yükleme sitelerinden birine yükleyip paylaşın inceleyelim.
 
Geri
Üst