将 sheet 复制到另一个工作簿,但 sheet 也保存在新工作簿中
copy sheet to another workbook but the sheet is also saved in a new workbook
我需要将 sheet 从一个工作簿复制到另一个(现有)工作簿。它有效,但 sheet 也会自动保存在新工作簿中。我不知道这是为什么。这是我的代码:
Worksheets("New").Activate
If IsSheetEmpty(StartWorkbook.Sheets("New")) = True Then
Application.DisplayAlerts = False
Worksheets("New").Delete
OLDWorkbook.Activate
Sheets("sheet1").Select
Sheets("sheet1").Copy
Sheets("sheet1").Copy After:=StartWorkbook.Sheets("Control")
StartWorkbook.Activate
Sheets("sheet1").Name = "New"
OLD.Close
Application.DisplayAlerts = True
Else
MsgBox ("sheet is not empty")
End If
提前致谢
只是为了得到一个正确的答案:
此行为是由于复制没有目的地的 sheet,将创建一个包含此 sheet 的新工作簿。因此,没有命令 "paste" 复制 sheet.
对于给定的代码,只需删除行
Sheets("sheet1").Copy
但保留这条线:
Sheets("sheet1").Copy After:=StartWorkbook.Sheets("Control")
(显然是需要的);)
我需要将 sheet 从一个工作簿复制到另一个(现有)工作簿。它有效,但 sheet 也会自动保存在新工作簿中。我不知道这是为什么。这是我的代码:
Worksheets("New").Activate
If IsSheetEmpty(StartWorkbook.Sheets("New")) = True Then
Application.DisplayAlerts = False
Worksheets("New").Delete
OLDWorkbook.Activate
Sheets("sheet1").Select
Sheets("sheet1").Copy
Sheets("sheet1").Copy After:=StartWorkbook.Sheets("Control")
StartWorkbook.Activate
Sheets("sheet1").Name = "New"
OLD.Close
Application.DisplayAlerts = True
Else
MsgBox ("sheet is not empty")
End If
提前致谢
只是为了得到一个正确的答案:
此行为是由于复制没有目的地的 sheet,将创建一个包含此 sheet 的新工作簿。因此,没有命令 "paste" 复制 sheet.
对于给定的代码,只需删除行
Sheets("sheet1").Copy
但保留这条线:
Sheets("sheet1").Copy After:=StartWorkbook.Sheets("Control")
(显然是需要的);)