VBA从工作簿复制并粘贴到ThisWorkbook

时间:2017-05-19 19:20:37

标签: excel vba excel-vba excel-2010

enter image description here我正在尝试复制模板并将其粘贴到当前工作簿中。但是代码错误了。我得到运行时错误1004。

Sub templateToBBU()

'OPEN TEMPLATE
Application.AskToUpdateLinks = False
Application.DisplayAlerts = False
Dim sPath As String, sFile As String
Dim wb As Workbook
sPath = "C:\Users\user123\Desktop\"
sFile = sPath & "BBU_CMD_TEMPLATE.xlsx"
Set wb = Workbooks.Open(sFile)

'COPY TEMPLATE PASTE IN BBU DOC
wb.Sheets("TEMPLATE").Copy 
    After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

End Sub

全心全意,

1 个答案:

答案 0 :(得分:1)

我测试了您的代码Excel 2016,它没有问题。对于Excel 2003 - 2010而言,它似乎是一个已知问题,并且有一个workaround。将模板文件另存为Excel模板(xltx)并尝试如下:

Sub templateToBBU()

'OPEN TEMPLATE
Application.AskToUpdateLinks = False
Application.DisplayAlerts = False
Dim sPath As String, sFile As String

sPath = "C:\Users\User123\Desktop\"
sFile = sPath & "Book1.xltx"

ThisWorkbook.Sheets.Add Type:=sFile
End Sub