sayfa açılırken tetiklenecek şekilde kod yazmak da cozer ve run sub kullanmaya gerek kalmaz. Ancak dosyanızı bilmiyorum eklemediğinizden deneme yapamam.Bu arada sayın
@necati nin uyarısını da dikkate alınız zira birlestirilmis hucreler genelde problem kaynagı olur
deneyin :
Private Sub Workbook_Open()
Call VeriKopyala ' VeriKopyala makrosunu çağırarak otomatik çalışmasını sağlar
End Sub
Sub VeriKopyala()
Dim ws As Worksheet
Dim lastRowA As Long
Dim i As Long
Dim destRow As Long
Set ws = ThisWorkbook.Sheets("Sheet1") ' "Sheet1" yerine çalışma sayfanızın adını yazın
lastRowA = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
' H sütununda ilk boş hücrenin satır numarasını bul
destRow = 1
Do Until IsEmpty(ws.Cells(destRow, "H"))
destRow = destRow + 1
Loop
' A sütunundaki her bir hücreyi H sütununa kopyala
For i = 1 To lastRowA
ws.Cells(destRow, "H").Value = ws.Cells(i, "A").Value
' H sütunundaki bir sonraki boş hücreye geç
destRow = destRow + 1
Next i
End Sub
Bu kod, çalışma kitabı açıldığında Workbook_Open olayını kullanarak VeriKopyala makrosunu otomatik olarak çağırır. Böylece, dosya açıldığında verilerinizi otomatik olarak kopyalamak için herhangi bir işlem yapmanıza gerek kalmaz.