下面的这个Sub从另一张纸张复制一张纸。长度是可变的所以我使用了LastRow。我想更新Sub以不复制整个工作表,而是从wb2中的标题复制到最后一行数据。标题每次显示在不同的行上。列“A”中的列标题是“客户端”。最后一列中的标题是“Last”
Sub CopySheetsl _()
Set wb1 = Workbooks("macro..xlsm")
Set wb2 = Workbooks.Open("L:\ Report.xlsx")
LastRow = wb2.Sheets("Page1_1").range("A:Y").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
wb1.Sheets("Carrier").range("E1", "BU1" & LastRow) = wb2.Sheets("Page1_1").range("A1", "BQ1" & LastRow).value ' CopySht 'Range("A11", "I11" & LastRow).Value
wb1.Close
wb2.Close
End Sub
答案 0 :(得分:1)
您需要使用Range.CurrentRegion
我会对此进行编辑,因为在评论中阅读该代码非常棘手:
Sub test()
Dim strAddress As String
strAddress = Sheets(2).Range("A1").CurrentRegion.Address
Sheets(1).Range(strAddress) = Sheets(2).Range(strAddress).Value
End Sub