DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Sub Kopyala()
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx"
For i = 1 To Workbooks("Kitap1.xlsm").Sheets.Count
Workbooks("Kitap1.xlsm").Sheets(Workbooks("Kitap1.xlsm").Sheets(i).Name).Copy _
Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1")
Next
Application.ScreenUpdating = True
Sheets(1).Select
MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..."
End Sub
Üstadım olmadı. makro hata veriyor, direk kitap2 açılıyor ama sayfalar aynıMerhaba,
Aşağıdaki kodu bir modüle yapıştırıp dener misiniz?
Kod:Sub Kopyala() Application.ScreenUpdating = False Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx" For i = 1 To Workbooks("Kitap1.xlsm").Sheets.Count Workbooks("Kitap1.xlsm").Sheets(Workbooks("Kitap1.xlsm").Sheets(i).Name).Copy _ Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1") Next Application.ScreenUpdating = True Sheets(1).Select MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..." End Sub
Üstadım teşekkür ederim şimdi sayfaları aktardı.Ama benim istediğim sadece aktif sayfanın aktarılması. bu kod tüm kitabı aktarıyor.Aslında benim çalışma dosyamı size anlatırsam daha açıklayıcı olacak. Benim hesaplama yaptığm bir sayfam var. ilgili ayın işlemleri bitince bu kod sayesinde o ayın sayfasını arşiv adlı bir çalışma kitabına kopyalamak. bir sonraki ayda da yine aynı sayfayı ismini değiştirerek kullanıyorum. yani daha önce ocak yazan sayfanın adını şubat olarak değiştirip tekrar hesaplama yapıyorum. Bu arada office sürümüm 2007Merhaba,
Ekli dosya yukarıdaki kodlarla istediğiniz işlemi yapmaktadır.
Kitap1 isimli dosyanız makro etkin çalışma kitabı (.xlsm) olarak kaydedilmelidir. Profilinizde kullandığınız ecxel versiyonu yazmıyor, eklediğiniz dosyadan office 97 veya üstü kullandığınızı varsayarak kodu ona göre yazdım.
Merhaba,Arkadaşlar benim ricam kitap1 dosyasındaki sayfaları isimlerine göre kitap2 dosyasına kopyalamak. yardımlarını bekliyorum.
Sub Kopyala()
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx"
Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1")
Application.ScreenUpdating = True
Sheets(1).Select
MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..."
End Sub
Üstad kod çalışmadı.Merhaba,
İlk mesajınızda "sayfaları" diyerek birden fazla sayfa kopyalanacağını belirtmişsiniz. Aktif sayfa deseydiniz ona göre yazardık kodu.
Neyse, aşağıdaki kodu yukarıda belirttiğim koşullarda çalıştırırsanız istediğinizi yapar.
Kod:Sub Kopyala() Application.ScreenUpdating = False Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx" Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1") Application.ScreenUpdating = True Sheets(1).Select MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..." End Sub
Üstad bu defa mükemmel çalışıyor. teşekkür ederim. Son olarak benim dosyalarımda formül olduğundan kopyalamayı kopyala-özel yapıştır-değerler şeklinde nasıl yapıcaz. formüllerin kopyalanmasını istemiyorum.Merhaba,
Ekli dosyaya dener misiniz?
Sub Kopyala()
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx"
Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1")
ActiveSheet.Cells.Copy
ActiveSheet.Cells.PasteSpecial Paste:=xlPasteValues
Sheets(1).Select
[A1].Select
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..."
End Sub
Üstadım mükemmel olmuş. Teşekkür ederim eline sağlıkMerhaba,
İsteklerinizi en başta yazsanız forumda kirliliğe neden olmasak !!!
Kodu aşağıdaki ile değiştirin.
Kod:Sub Kopyala() Application.ScreenUpdating = False Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx" Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1") ActiveSheet.Cells.Copy ActiveSheet.Cells.PasteSpecial Paste:=xlPasteValues Sheets(1).Select [A1].Select Application.CutCopyMode = False Application.ScreenUpdating = True MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..." End Sub
Merhaba,Üstadım dosyaları başka bir klasöre almak istiyorum bunu nasıl yapabilrim. mesela c sürücüsü bordro klasörünün içine![]()
Merhaba,
Kaynak ve hedef klasörünüz aynı olmak koşulu ile yukarıdaki kod her klasörde çalışır.
Dosyaları kod yardımıyla başka bir klasöre almak(taşımak/kopyalamak) istiyorsanız forumda örnekleri var.Arama yaparsanız bulursunuz.
Sub Kopyala()
sAdı = ThisWorkbook.ActiveSheet.Name
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx"
For i = 1 To Sheets.Count
If Sheets(i).Name = sAdı Then
If MsgBox(Sheets(i).Name & " İsimli Sayfa Var." & vbCrLf & " Yine de Aktarmak İstiyor musunuz?", _
vbYesNo + vbQuestion, "U Y A R I !!!!") = vbNo Then Exit Sub
End If
Next
Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1")
ActiveSheet.Cells.Copy
ActiveSheet.Cells.PasteSpecial Paste:=xlPasteValues
Sheets(1).Select
[A1].Select
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..."
End Sub
Merhaba,
Aşağıdaki kodu kullanabilirsiniz.
Kod:Sub Kopyala() sAdı = ThisWorkbook.ActiveSheet.Name Application.ScreenUpdating = False Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx" For i = 1 To Sheets.Count If Sheets(i).Name = sAdı Then If MsgBox(Sheets(i).Name & " İsimli Sayfa Var." & vbCrLf & " Yine de Aktarmak İstiyor musunuz?", _ vbYesNo + vbQuestion, "U Y A R I !!!!") = vbNo Then Exit Sub End If Next Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets("Sayfa1") ActiveSheet.Cells.Copy ActiveSheet.Cells.PasteSpecial Paste:=xlPasteValues Sheets(1).Select [A1].Select Application.CutCopyMode = False Application.ScreenUpdating = True MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..." End Sub
Sub Kopyala()
sAdı = ThisWorkbook.ActiveSheet.Name
Application.ScreenUpdating = False
Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx"
For i = 1 To Sheets.Count
If Sheets(i).Name = sAdı Then
If MsgBox(Sheets(i).Name & " İsimli Sayfa Var." & vbCrLf & " Yine de Aktarmak İstiyor musunuz?", _
vbYesNo + vbQuestion, "U Y A R I !!!!") = vbNo Then Exit Sub
Windows("Kitap1.xlsm").Activate
ActiveSheet.UsedRange.Copy
Windows("Kitap2.xlsx").Activate
Sheets(i).[A1].Select
ActiveSheet.Paste
GoTo Atla
End If
Next
Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets(1)
Atla:
ActiveSheet.Cells.Copy
ActiveSheet.Cells.PasteSpecial xlPasteValues
[A1].Select
Application.CutCopyMode = False
Application.ScreenUpdating = True
MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..."
End Sub
Üstadım eline sağlık tam istediğim gibi olmuş. Çok teşekkür ederim..Merhaba,
Aşağıdaki kodu dener misiniz?
Kod:Sub Kopyala() sAdı = ThisWorkbook.ActiveSheet.Name Application.ScreenUpdating = False Workbooks.Open ThisWorkbook.Path & "\" & "Kitap2.xlsx" For i = 1 To Sheets.Count If Sheets(i).Name = sAdı Then If MsgBox(Sheets(i).Name & " İsimli Sayfa Var." & vbCrLf & " Yine de Aktarmak İstiyor musunuz?", _ vbYesNo + vbQuestion, "U Y A R I !!!!") = vbNo Then Exit Sub Windows("Kitap1.xlsm").Activate ActiveSheet.UsedRange.Copy Windows("Kitap2.xlsx").Activate Sheets(i).[A1].Select ActiveSheet.Paste GoTo Atla End If Next Workbooks("Kitap1.xlsm").ActiveSheet.Copy Before:=Workbooks("Kitap2.xlsx").Sheets(1) Atla: ActiveSheet.Cells.Copy ActiveSheet.Cells.PasteSpecial xlPasteValues [A1].Select Application.CutCopyMode = False Application.ScreenUpdating = True MsgBox "İşlem Tamam...", vbInformation, "dEdE Başarılar Diler..." End Sub
Üstadım eline sağlık tam istediğim gibi olmuş. Çok teşekkür ederim..
vbYesNo + vbQuestion, "U Y A R I !!!!") = vbNo Then Exit Sub
[COLOR="Red"] Sheets(i).UsedRange.Clear[/COLOR]
Windows("Kitap1.xlsm").Activate