【发布时间】:2020-04-03 07:08:28
【问题描述】:
我创建了一个工作簿,我将其发送给其他员工,以便他们记录某些项目。用户将工作簿保存为“STATS(他们的徽章编号)”并将其发回。我从他们的书 (Sheet1.range("B4:B29") 和 .Range("F1:G2) 复制单元格并粘贴到我的主工作簿 (STATS Total) 上以每个员工的姓氏命名的选项卡上。我是试图自动打开他们发给我的大量书籍(都在同一个文件夹中),复制数据,然后将其粘贴到相同的单元格中(B4:B29 和 F1:G2 在他们命名的工作表上,然后关闭“源”工作簿。为了提供帮助,我将 Cell 中每个“源”书的完整路径名(“I2”放在主簿的工作表上。所以在主簿中,有一个名为“Smith”的工作表,在 I2 中是工作簿的路径名他发给我。这是我尝试过的代码,但我无法让它工作。我应该做些什么不同的事情?
Sub CopyAndPaste()
Dim x As Workbook, y As Workbook
Dim ws1 As Worksheet, ws2 As Worksheet
Set x = Workbook(Sheet6.Range("I2").Text) 'copied book
Set y = ThisWorkbook 'pasted to this book
Set ws1 = x.Sheet1 'copied from
Set ws2 = y.Sheets("copied to")
ws1.Cells.Copy ws2.Cells
y.Close True
x.Close False
End Sub
【问题讨论】:
-
指定 "I can't get it to work" 的实际含义(什么错误,哪一行抛出,等等...)
-
在“Set x...”行上以“Sub or Function Not Defined”开头
-
对此我很抱歉 - 我知道最好不要忽略它。似乎不允许我使用 "Sheet6.Range("I2").Text" 来指定工作簿。