Excel VBA - 从各种名为范围的工作簿复制到一个"recap"工作簿



大家好,请提前感谢您的时间。

我不是VBA的庞大专家,但有时它可以帮助我获得我正在从事的重复任务的好时光。

我想收集从各个文件到一个" recap"文件的信息。我命名了一些范围(每个单元格),以简化所有文件中这些信息的查找。


这是我开始写的行:

Sub collectdata()
  Set a = Workbooks.Open("C:full addressProject1.xlsx")
  Set b = Workbooks.Open("C:full addressProject2.xlsx")
  Set c = Workbooks.Open("C:full addressProject3.xlsx")
  ThisWorkbook.Sheets("Data").Range("C3") = a.Application.Range("Project1_Total")
  ThisWorkbook.Sheets("Data").Range("C3") = b.Application.Range("Project2_Total")
  ThisWorkbook.Sheets("Data").Range("C3") = c.Application.Range("Project3_Total")
  a.Close savechanges:=False
  b.Close savechanges:=False
  c.Close savechanges:=False
End Sub

我被错误1004陷入困境。我想我知道为什么,但我不知道该如何纠正。

带有一个"项目",一切都可以。
但是一旦添加第二个文件,我会收到错误1004。

有一个命名范围来自一个项目,这还可以。但是,一旦我添加第二个名称范围,我从同一文件中添加了错误1004。

感谢您的时间。

这将在范围在第一个纸上的假设下起作用:

ThisWorkbook.Sheets("Data").Range("C3") = a.Sheets(1).Range("Project1_Total")
ThisWorkbook.Sheets("Data").Range("D3") = b.Sheets(1).Range("Project2_Total")
ThisWorkbook.Sheets("Data").Range("E3") = c.Sheets(1).Range("Project3_Total")

我以为您不想多次覆盖C3。如果您不知道范围在哪个范围内,则可以使用find在工作簿中找到范围。

相关内容

  • 没有找到相关文章

最新更新