微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

粘贴到另一个工作簿中的第一个空白单元格

如何解决粘贴到另一个工作簿中的第一个空白单元格

请帮帮我,我想将复制的数据粘贴到另一个工作簿中的第一个空白单元格

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 举报,一经查实,本站将立刻删除。