当我使用此代码将数据追加到另一个工作表时,当范围不均匀时(即一列的数据多于另一列),一些数据会被替换。最后一行只基于一列,但我需要它基于2列。我该如何做到这一点?谢谢!
Sub CopyData()
Dim wsCopy As Worksheet
Dim wsDest As Worksheet
Dim lCopyLastRow As Long
Dim lDestLastRow As Long
Dim lDestLastColumn As Long
Set wsCopy = Sheets("CopyFrom")
Set wsDest = Sheets("PasteHere")
lDestLastRow = wsDest.Cells(wsDest.Rows.Count, "B").End(xlUp).Offset(1).Row
wsCopy.Range("C3:F20").Copy
wsDest.Range("B" & lDestLastRow).PasteSpecial
'Copy & Paste Date
wsCopy.Range("B1").Copy
wsDest.Range("A" & lDestLastRow).PasteSpecial
End Sub
1条答案
按热度按时间ccrfmcuu1#
添加另一个变量来存储另一列的长度(我称之为
tempLrow
),然后选择最大值。在下面的答案中,我使用列A作为示例,但您可以替换为任何其他列-或多次执行相同操作,以获得更多不同列的最大长度。