Excel 将所有工作表从一个(已关闭)工作簿复制到另一个工作簿;
我正试图把所有的纸张从一本书复制到另一本书Excel 将所有工作表从一个(已关闭)工作簿复制到另一个工作簿;,excel,vba,Excel,Vba,我正试图把所有的纸张从一本书复制到另一本书 Windows("test.xls").Sheets.Copy Before:=Workbooks(ThisWorkbook).Sheets("00") 错误类型不匹配 “test.xls”与ActiveWorkBook位于同一文件夹中。 特别是-有没有办法不用打开“test.xls”就可以做到这一点?也许我想简单一点,但如果你想复制所有工作表,基本上就是复制整个电子表格文件。以编程方式将“旧”工作簿保存为新名称不是更容易吗?您将创建一个具有相同内容
Windows("test.xls").Sheets.Copy Before:=Workbooks(ThisWorkbook).Sheets("00")
错误类型不匹配“test.xls”与ActiveWorkBook位于同一文件夹中。
特别是-有没有办法不用打开“test.xls”就可以做到这一点?也许我想简单一点,但如果你想复制所有工作表,基本上就是复制整个电子表格文件。以编程方式将“旧”工作簿保存为新名称不是更容易吗?您将创建一个具有相同内容的全新文件
也许我遗漏了什么,但这是另一个角度来看待它。您可以打开关闭的工作簿(在后台打开要比使用关闭的书本容易得多),然后将所有工作表从
Test.xls
复制到另一本书的特定部分(即工作表00
)的一行中
代码如下:
- 打开一个关闭的工作簿
c:\temp\Test.xls”)
- 复制包含代码的工作簿中工作表
之前的所有工作表00
- 关闭
Test.xls
Sub CopyAll()
Dim Wb1 As Workbook
Dim Wb2 As Workbook
With Application
.ScreenUpdating = False
.EnableEvents = False
.DisplayAlerts = False
End With
Set Wb1 = Workbooks.Open("c:\temp\Test.xls")
Set Wb2 = ThisWorkbook
Wb1.Sheets.Copy Before:=Wb2.Sheets("00")
Wb1.Close False
With Application
.ScreenUpdating = True
.EnableEvents = True
.DisplayAlerts = True
End With
End Sub
如果OP希望合并两个工作簿,则不会。我的假设是,我在第2册中有另一张工作表,希望添加第1册中的工作表。非常好,感谢您逐步解释您在编码方面所做的努力。这是给管理员的:您应该更改一些规则。有些答案值得投票不止一次。