【发布时间】:2020-07-10 08:56:16
【问题描述】:
我有一个宏,它从一个工作簿中获取数据并将其复制到另一个工作簿中。 当前设置为将文件从 Book2.xlsx 复制到 Book1.xlsm。 只有当我打开 Book2 和 Book1 时它才有效。 但是,我想使用这个宏,以便它在我文件夹中的所有 Excel 文件上运行,例如,如果我在文件夹 C:\Users\JJ\ 中还有 Book5.xlsm、Book15.xlsx 和 Book153.xlsx Documents\Downloads,我想将所有这些文件中的单元格“D25:D26、D29:D32、D35”复制并粘贴到 Book1.xlsm 中。 如何使该过程自动化,这样我就不必每次都在代码中手动输入文件名? 提前感谢您的帮助。
Sub Copy_Form_Below_Last_Cell()
Dim wsDest As Worksheet
Dim lDestLastRow As Long
Set wsDest = Workbooks("Book1.xlsm").Worksheets("Sheet1")
lDestLastRow = wsDest.Cells(wsDest.Rows.Count, "H").End(xlUp).Offset(1).Row
Workbooks("Book2.xlsx").Worksheets("Sheet_2").Range("D25:D26, D29:D32, D35").Copy _
wsDest.Range("H" & lDestLastRow)
wsDest.Activate
End Sub
【问题讨论】:
-
您可能会在网络搜索中找到许多“合并文件夹中不同工作簿中的工作表”或“合并/合并工作簿”的链接。那你不想改写你的问题吗?
-
但我不想合并工作表。我每天收到大约 100 份 Excel 表格。我只想从每个文件中提取 5 个单元格并将它们组合成一个文件
-
您要复制的这 7 个单元格中有哪些类型的数据?它们是公式、文本还是数字的值。它有所作为。
-
只是数字
-
book1 是否与其他图书在同一个文件夹中,并且该文件夹中是否只有您需要数据的图书?