• DİKKAT

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

makroyu tüm sütuna uygulamak

  • Konbuyu başlatan Konbuyu başlatan andon
  • Başlangıç tarihi Başlangıç tarihi
Katılım
30 Nisan 2008
Mesajlar
64
Excel Vers. ve Dili
office 2007 ve Türkçe
Merhaba,

Elimde, aynı klasör içinde; "dosya1.xlsx" ve "dosya2.xlsx" isimli iki adet dosya olduğunu düşünelim.
Ben dosya2'nin "A2" hücresinden başlayarak sonra ki hücrelerde de veri var ise eğer, bu verileri kopyalayarak, dosya1'in A2 hücresinden başlayarak verileri buraya taşımak istiyorum.
Kendim bir şeyler yazdım ancak "veri var ise" şartıyla diğer hücrelerde olan verileri nasıl alabilirim.

Kodum şu şekildedir;

Sub Kod()
Application.ScreenUpdating = False
Set dosya1 = ThisWorkbook.Sheets("Sayfa1")
Set dosya2 = Workbooks.Open("C:\Users\userx\Desktop\macrodeneme\dosya2.xlsx")
dosya1.Range("A2") = dosya2.Sheets("Sayfa1").Range("A2")
dosya2.Close
Application.ScreenUpdating = True
End Sub
 
Kod çalışır mı bilmiyorum, çünkü hiç farklı dosyalar aradı işlem yaptırmadım. Aşağıdaki gibi deneyin:
Kod:
Sub Kod()
Application.ScreenUpdating = False
Set dosya1 = ThisWorkbook.Sheets("Sayfa1")
Set dosya2 = Workbooks.Open("C:\Users\userx\Desktop\macrodeneme \dosya2.xlsx")
son = dosya2.Cells(Rows.Count, "A").End(3).Row
For i = 1 To son
    If dosya2.Cells(i, "A") <> "" Then
        yeni = dosya1.Cells(Rows.Count, "A").End(3).Row + 1
        dosya1.Cells(yeni, "A") = dosya2.Cells(i, "A")
    End If
Next
dosya2.Close
Application.ScreenUpdating = True
End Sub
 
Teşekkür ederim,
son = dosya2.Cells(Rows.Count, "A").End(3).Row
bu satırda hata verdi.
 
Muhtemelen bir de sayfa adı eklemek gerekiyordur :
Kod:
son=dosya2.Sheets("Sayfa1").Cells(Rows.Count, "A").End(3).row

Olarak deneyin.
 
Geri
Üst