EXCEL VBA:从工作簿复制到另一个工作簿在不同的位置

我正试图将整个工作表从一个Excel文件复制到另一个工作表中。 以下是我写的代码不起作用。 请build议更改。

Sub copyallwos() Dim wkbSource As Workbook Dim wkbDest As Workbook Dim shttocopy As Worksheet Dim wbname As String Set wkbSource = Workbooks.Open("C:\Users\AV\Documents\New folder\SCADA Wos.xlsm") Set wkbDest = Workbooks("C:\Users\AV\Documents\New folder\MASTER.xlsm") 'perform copy Set shttocopy = wkbSource.Sheets("tt") shttocopy.Copy wkbDest.Sheets("SCADAWOs").Select ActiveSheet.Paste End Sub 

'perform copy下试试这个

 wkbSource.Sheets("tt").Copy After:=wkbDest.Sheets("SCADAWOs") 

您也可以在“SCAD …”工作表之前插入工作表,只需将After:=更改为Before:= 。 另外,如果您不一定知道目标工作簿中的工作表名称,则可以使用After:=Wkbdest.sheets(sheets.count) ,它将在最后一个工作表之后进行插入。