将数据从活动单元格复制到另一个工作簿

时间:2020-04-07 18:29:03

标签: excel vba

我是这里的初学者。我在网上看到了这个示例,可以将数据从固定范围的工作簿复制到另一个工作簿。

有人可以指导我如何将A2单元中的数据复制到最后一个活动单元中吗? Here's an example of the data I need to copy

在这个给定的示例中,我想将那些以蓝色突出显示的单元格复制到另一个工作簿中。数据每次都会变化,因此固定范围对我不起作用。我尝试使用“ .UsedRange”,但它也会复制页脚,这是我不需要的。

AttributeError: <class 'custom_lib.Machine'> does not have the attribute '_Machine__private_method'

参考:https://www.excelcampus.com/vba/copy-paste-another-workbook/

2 个答案:

答案 0 :(得分:1)

按照发布的屏幕截图:

  • “页脚”似乎位于A列中
  • 数据填充从A到E的所有列

因此,您可以使用B列从以下位置获取最后使用的单元格行:

Sub Copy_Method()
   With Workbooks("New-Data.xlsx").Worksheets("Export")
       .Range("A2:E" & .Cells(.Rows.Count, 2).End(xlUp).Row).Copy _
       Workbooks("Reports.xlsm").Worksheets("Data").Range("A2")
   End With
 End Sub

答案 1 :(得分:0)

鉴于您的特定设置,您可以使用CurrentRegion属性。

Sub Copy_Method()

Dim r As Range

Set r = Workbooks("New-Data.xlsx").Worksheets("Export").Range("A1").CurrentRegion
Set r = r.Offset(1).Resize(r.Rows.Count - 1) 'exclude the header
r.Copy Workbooks("Reports.xlsm").Worksheets("Data").Range("A2")

End Sub