如何解决粘贴到另一个工作簿中的第一个空白单元格
请帮帮我,我想将复制的数据粘贴到另一个工作簿中的第一个空白单元格
Workbooks("116545 20210602 IL Qty 4498 Customers.xlsx").Worksheets("Sheet1").Range("H2",Range("H2").End(xlDown)).copy _
Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Range("A967")
Workbooks("116545 20210602 IL Qty 4498 Customers.xlsx").Worksheets("Sheet1").Range("M2",Range("M2").End(xlDown)).copy _
Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Range("B967")
解决方法
通过以下方式获取包含其他工作簿中数据的最后一行:
lrow = Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Cells(Worksheets("Taul1").Rows.Count,"A").End(xlUp).Row 'Get last row
然后使用最后一行值并添加行以获取第一个空白行:
Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Range("A"& lrow + 1)
代码示例:
lrow = Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Cells(Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Rows.Count,"A").End(xlUp).Row + 1 'Get last row
Workbooks("116545 20210602 IL Qty 4498 Customers.xlsx").Worksheets("Sheet1").Range("H2:H" & Workbooks("116545 20210602 IL Qty 4498 Customers.xlsx").Worksheets("Sheet1").Range("H" & Rows.Count).End(xlUp).Row).Copy _
Workbooks("Tax Rep.xlsx").Worksheets("Taul1").Range("A" & lrow)
重写代码的一种方法(经过测试和工作):
Option Explicit
Sub test_copy_paste()
Dim wsCopy As Worksheet
Dim wsDest As Worksheet
Dim lrowCopy As Long
Dim lrowDest As Long
'Set copy and destination sheet variables
Set wsDest = Workbooks("Tax Rep.xlsx").Worksheets("Taul1")
Set wsCopy = Workbooks("116545 20210602 IL Qty 4498 Customers.xlsx").Worksheets("Sheet1")
'Find last row in destination and copy sheets
lrowDest = wsDest.Cells(wsDest.Rows.Count,"A").End(xlUp).Row + 1 'Get last row
lrowCopy = wsCopy.Range("H" & Rows.Count).End(xlUp).Row
'Copy and paste
wsCopy.Range("H2:H" & lrowCopy).Copy _
wsDest.Range("A" & lrowDest)
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。