将数据复制/粘贴到数据的最后一行/之后。 从旧的工作簿到新的工作簿

我正在更新每周主文件。 因此,我试图将数据从源文件复制并粘贴到主工作表。 现在,数据需要粘贴到上一周的数据之后的行和列中。 例如,如果上个星期数据结束(“H70:M70”),我需要新的粘贴数据(“H71:M71”)。 此外,新粘贴的数据有很多行,所以下周的数据必须粘贴在本周数据的最后一行(即“H230:M230”)之后。 请帮忙。

Option Explicit Sub Copydata() Dim myWB As Workbook Dim thisWB As Workbook Dim thisWS As Worksheet Application.ScreenUpdating = False Set myWB = Workbooks.Open("C:\Users\jjordan\Desktop\test.xlsx") myWB.Sheets("Sheet1").Range("A8:F17").Copy Set thisWB = ThisWorkbook Set thisWS = thisWB.Sheets("Test data") thisWB.Activate thisWS.Range("H71:M71").PasteSpecial _ Paste:=xlPasteValues, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False With Application .CutCopyMode = False .ScreenUpdating = True End With myWB.Close 

结束小组

James,你熟悉VBA中的End()吗?

 lastRow = ActiveSheet.Cells(Rows.Count,1).End(xlUp).Row 

这将转到工作表第1列中最后一个可能的单元格,然后向上,直到find包含数据的单元格并返回相应的行。

End()的其他可能参数是xlDown,xlToLeft和xlToRight。 它们可以用来查找最后/第一列和第一行。