将所有工作表从一个(已关闭)工作簿复制到另一个工作簿

时间:2012-08-19 19:36:52

标签: excel excel-vba vba

我正在尝试将所有工作表从一本书复制到另一本书

Windows("test.xls").Sheets.Copy Before:=Workbooks(ThisWorkbook).Sheets("00")

错误 - 类型不匹配!
“test.xls”与ActiveWorkBook位于同一文件夹中 特别是 - 有没有办法在不打开“test.xls”的情况下做到这一点?

2 个答案:

答案 0 :(得分:9)

您可以打开已关闭的工作簿(在后台打开比使用已关闭的书籍容易得多),然后将所有工作表从Test.xls复制到另一本书的特定部分(即工作表{{1 }})在一行

以下代码:

  • 打开已关闭的工作簿00
  • 复制包含代码
  • 的工作簿中工作表c:\temp\Test.xls")之前的所有工作表
  • 关闭00

代码抑制了Test.xls和screenupdating中的任何警报,代码事件

Test.xls

答案 1 :(得分:4)

也许我想要简单但如果你想要复制所有工作表,那么你必须复制整个电子表格文件。以编程方式将“旧”工作簿保存为新名称会不会更容易?您将创建一个具有相同内容的全新文件。

也许我错过了一些东西,但这是另一个看待它的角度。