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

VBA从工作簿复制并粘贴到此工作簿,vba,excel,excel-2010,Vba,Excel,Excel 2010,我正在尝试复制模板并将其粘贴到当前工作簿中。但是代码出错了。我得到一个运行时错误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

我正在尝试复制模板并将其粘贴到当前工作簿中。但是代码出错了。我得到一个运行时错误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

谢谢大家,

我测试了您的Excel 2016代码,它可以正常工作。这似乎是Excel 2003-2010的一个已知问题,并且存在一个问题。将模板文件另存为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

错误是什么?在哪一行?请参阅此处的复制粘贴示例谢谢-我将在哪一行更新我的帖子(运行时错误1004)。您收到错误消息?这里出错:wb.Sheets(“模板”)。复制后:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)你有两行代码,它应该是一行,或者在第一行末尾加上``以告诉vba它是一个延续。我的代码适用于所有xlsx文件,但不适用于xls文件。我需要它在两种情况下都工作:/I我似乎无法使此代码在这种文件类型下工作。解决方案:将文件另存为.XLS,并在两种情况下都工作。XLS/.XLSX