Sayfa1 deki Tabloyu Diğer sayfalara otomatik kopyalama MAKRO!

Katılım
10 Aralık 2022
Mesajlar
14
Excel Vers. ve Dili
2016
Arkadaşlar 01.01.2023 tarihinden 31.12.2023 tarihine kadar sayfam var, 01.01.2023 deki tablomu tüm sayfalara kopyalaya bilecek bir formül rica ediyorum mümkünse Teşekkürler
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Bir modüle yapıştırarak dener misiniz?
Tablonuzun A1:F20 aralığında olduğunu varsaydım.
Kod:
Sub Tablo_Kopyala()
    For i = 2 To Sheets.Count
        Sheets("01.01.2023").Range("A1:F20").Copy Sheets(i).Range("A1")
    Next
End Sub
 
Katılım
20 Şubat 2007
Mesajlar
655
Excel Vers. ve Dili
2007 Excel, Word Tr
Merhaba,
Kitaptaki tüm sayfaların aynı bölgesine "SEÇİLEN VERİ"yi bir anda kopyalamak için örnek bir makro:
Önce tabloyu seçin sonra makroyu çalıştırın.

Kod:
Sub SayfalarıDoldur2()
Worksheets.FillAcrossSheets Range:=Selection, Type:=xlAll
End Sub
 
Katılım
10 Aralık 2022
Mesajlar
14
Excel Vers. ve Dili
2016
Bir modüle yapıştırarak dener misiniz?
Tablonuzun A1:F20 aralığında olduğunu varsaydım.
Kod:
Sub Tablo_Kopyala()
    For i = 2 To Sheets.Count
        Sheets("01.01.2023").Range("A1:F20").Copy Sheets(i).Range("A1")
    Next
End Sub
A1:H42 arasında olarak değiştirdim, lakin makroyu çalıştırdığımda işe yaramıyor.
 
Katılım
10 Aralık 2022
Mesajlar
14
Excel Vers. ve Dili
2016
Merhaba,
Kitaptaki tüm sayfaların aynı bölgesine "SEÇİLEN VERİ"yi bir anda kopyalamak için örnek bir makro:
Önce tabloyu seçin sonra makroyu çalıştırın.

Kod:
Sub SayfalarıDoldur2()
Worksheets.FillAcrossSheets Range:=Selection, Type:=xlAll
End Sub
sizi yazdığınız kodu yeni bir excel sayfası açıp tablo oluşturduğumda yapıyor, lakin benim daha önceden makro kullanarak 01.01.2023 den 31.12.2023 e kadar açtığım sayfalara kopyalamıyor, sadece seçtiğim bölge diğer sayfalardada seçilmiş görünüyor. Anlayamadım.
 
Katılım
10 Aralık 2022
Mesajlar
14
Excel Vers. ve Dili
2016
Sub SayfalarıDoldur2()
Worksheets.FillAcrossSheets Range:=Selection, Type:=xlAll
End Sub

Bu kodun mantığı sadece çizili yazılı tabloyu kopyalamak, benim kopyaladığım tabloyu seçtiğimde hiç birini maalesef alamıyor, ayrıca dolgu rengi eklediğimde de algılamıyor.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Gecikme için üzgünüm. Sorunuzu yeni fark ettim.
Aşağıdaki kod ile, tabloyu kopyalamak yerine sayfayı kopyalayıp çoğaltarak satır ve sütun genişlikleri sorununu aşabiliriz. Böylece sayfa eklemeyi de otomatik yaparız.
Kodun For Say = 2 To 364 satırındaki 364 sayısı eklenecek sayfa adedini gösterir. Bu sayıyı değiştirerek farklı adette sayfa ekleyebilirsiniz.
Kod:
Sub Sayfa_Ekle()
Application.ScreenUpdating = False
ilk = CDate("01.01.2023")
    For Say = 2 To 364
        Worksheets("1.01.2023").Copy After:=Sheets(Worksheets.Count)
        ActiveSheet.Name = DateAdd("d", Say - 1, ilk)
    Next
Application.ScreenUpdating = True
End Sub
 
Katılım
10 Aralık 2022
Mesajlar
14
Excel Vers. ve Dili
2016
Merhaba,
Gecikme için üzgünüm. Sorunuzu yeni fark ettim.
Aşağıdaki kod ile, tabloyu kopyalamak yerine sayfayı kopyalayıp çoğaltarak satır ve sütun genişlikleri sorununu aşabiliriz. Böylece sayfa eklemeyi de otomatik yaparız.
Kodun For Say = 2 To 364 satırındaki 364 sayısı eklenecek sayfa adedini gösterir. Bu sayıyı değiştirerek farklı adette sayfa ekleyebilirsiniz.
Kod:
Sub Sayfa_Ekle()
Application.ScreenUpdating = False
ilk = CDate("01.01.2023")
    For Say = 2 To 364
        Worksheets("1.01.2023").Copy After:=Sheets(Worksheets.Count)
        ActiveSheet.Name = DateAdd("d", Say - 1, ilk)
    Next
Application.ScreenUpdating = True
End Sub
İşe yaradı emeğinize sağlık, son sorum :) "GH4" hücresine Sayfanın ismini kopyalamam gerekiyor. tüm sayfalar için.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Aşağıdaki kodu kullanabilirsiniz.
Kod:
Sub Sayfa_Ekle()
Application.ScreenUpdating = False
ilk = CDate("01.01.2023")
    For Say = 2 To 364
        Worksheets("1.01.2023").Copy After:=Sheets(Worksheets.Count)
        ActiveSheet.Name = DateAdd("d", Say - 1, ilk)
        ActiveSheet.Range("GH4") = ActiveSheet.Name
    Next
Application.ScreenUpdating = True
End Sub
 
Üst