VBA'da başka sayfalardaki verileri peş peşe kopyalama sırasında karşılaştığım problem hakkında

Katılım
28 Ekim 2011
Mesajlar
7
Excel Vers. ve Dili
2019
Öncelikle herkese iyi çalışmalar dilerim, ustalarım vba'da bir yerde takıldım,

Birden fazla sayfadan oluşan bir excel dosyam var, benim amacım bu sayfalardaki benim belirlediğim aralıktaki veriyi alldata isimli excel sayfamda benim istediğim bir hücreden başlayarak bir buton aracılığıyla kopyalamasını sağlamak ancak bu işlemi yapabilmek için alldata isimli sayfamda 4 sütundan ve 32 satırdan oluşan bir tablo yaptım, tabloların dek geldiği sütunlar sırasıyla H; I; J ve K ya dek gelmektedir. H1: Hücresine Sıra No yazdım ve 1'den 30'a kadar bir sıra numarası verdim. I1 hücresinin başlığı Sayfa ismi, J1: Başlangıç Hücresi ve K1: Bitiş Hücresi olarak isimlendirdim. Örneğin I2 hücresine sayfa ismi olarak D yazdım (Bu isimde bir excel sayfam var), J2 hücresine başlangıç hücresi olarak A13 yazdım, K2 Hücresine ise bitiş hücresi (D sayfasındaki) olarak E1012 yazdım. bu işlemin benzerini I3 için : E1; J3 için A13 ve K3 için E980 yazdım. bu verileri peş peşe kopyalamasını sağlayabilmek içinde aşağıdaki kodu yazdım ancak bir yerde muhtemelen eksik birşey yazmış olmalıyım ki kopyalamayı peş peşe gerçekleştiremiyorum. Bu konuda beni aydınlatırsanız çok memnun olurum. şimdiden okuyup vaktinizi ayırdığınız için çok teşekkür ederim. iyi çalışmalar dilerim.

yazdığım kodda şu şekilde;

Private Sub kopyala_Click()
Dim ws1 As Worksheet, ws3 As Worksheet
Dim i As Integer
Dim startCell As Range
Set startCell = ThisWorkbook.Worksheets("alldata").Range("A2")
Set ws3 = ThisWorkbook.Worksheets("alldata")
For i = 2 To 31
Set ws1 = ThisWorkbook.Worksheets(Range("I" & i).Value)
ws1.Range(Range("J" & i).Value & ":" & Range("K" & i).Value).Copy startCell
startCell.Offset(0, i - 1).Select
Next i

End Sub
 
Üst