我想从 ActiveWorkbook 复制一张工作表到新建创建的工作簿。 新创建的工作簿将仅包含复制的工作表。
我也不希望它在复制工作表时打开。我想静默地将工作表复制到新创建的工作簿。
如果我执行以下操作,新创建的书有 3 张,而不是只有一张,并且在复制时打开。而且它还问我是否想用宏保存它,而我只想复制 sheet1,所以不需要任何宏,如何修复它以满足我的需要?
ThisWorkbook.Sheets('Sheet1').Copy
ActiveWorkbook.SaveAs 'C:\DestinationWb.xlsx', FileFormat:=51
最佳答案
新创建的工作簿必须打开 - 否则您将如何保存它? - 但切换 Application.ScreenUpdating
可能会促进您正在寻找的“静默”副本。切换 Application.DisplayAlerts
也会根据需要抑制警报。
Application.ScreenUpdating = False
Application.DisplayAlerts = False
ThisWorkbook.Sheets('Sheet1').Copy
ActiveWorkbook.SaveAs FileName:='C:\DestinationWb.xlsx', FileFormat:=51
ActiveWorkbook.Close
Application.DisplayAlerts = True
Application.ScreenUpdating = True
关于excel - 将工作表复制到(一张工作表的)新工作簿而不打开它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55153357/
联系客服