Я учусь копировать и вставлять с VBA автоматически без перезаписи данных. Мне удалось получить код для копирования из строк и вставить их в виде строк.
Теперь я хочу скопировать строки (таким же образом), но каждый раз вставлять их в виде столбца. Первая строка должна начинаться с отметки даты (каждый месяц) и под ней суммы. Суммы копируются из сводной таблицы, которая будет обновляться каждый месяц.
Вот мой письменный код:
Private Sub CommandButton1_Click()
Dim lastrow As Long, ecol As Long
'Stamp from when the data set is (in months)
If Worksheets("Database").Range("A3").Offset(1, 1) <> "" Then
Worksheets("Database").Range("A3").End(xlDown).Select
ActiveCell.Offset(1, 0).FormulaR1C1 = Now
End If
'To check the last filled line on sheet 'Database_Input'
lastrow = Sheet12.Cells(Rows.Count, 2).End(xlUp).Row
'Copy Paste section
For i = 2 To lastrow
Sheet12.Cells(i, 2).Copy
ecol = Sheet14.Cells(3, Columns.Count).End(xlToRight).Offset(0, 1).Column
ecol = Sheet14.Cells(3, Columns.Count).End
Sheet12.Paste Destination:=Sheet14.Cells(3, ecol)
Next i
End Sub
Он продолжает давать мне ошибку в следующем разделе:
For i = 2 To lastrow
Sheet12.Cells(i, 2).Copy
ecol = Sheet14.Cells(3, Columns.Count).End(xlToRight).Offset(0, 1).Column
ecol = Sheet14.Cells(3, Columns.Count).End
Sheet12.Paste Destination:=Sheet14.Cells(3, ecol)
Next i
Любой, у кого есть идея, как иметь дело сэто? Я скопировал мой ряд -> код строки и отредактировал его. Может быть, это должно быть совсем по-другому.
Большое спасибо!