Workbook.close无效

时间:2016-05-12 04:17:52

标签: vba excel-vba excel

尝试执行保存并关闭宏。

这是一个包含宏(xlsm)的工作簿,我将删除宏并将其保存为另外两个不同的路径xlsx。我希望以后关闭工作簿,但它不起作用。

结果: 1 xlsm,2 xlsx,保存后关闭。

Sub saveas()

*saves the workbook before removing macro
ThisWorkbook.Save

ActiveSheet.Shapes.Range(Array("Button 1")).Select
Selection.Delete

Worksheets(Array("Sheet1", "Sheet2", "Sheet3")).Copy
Application.DisplayAlerts = False
ActiveWorkbook.saveas Filename:="path1\list.xlsx"
ActiveWorkbook.saveas Filename:="path2\list.xlsx"

ActiveWorkbook.Close SaveChanges:=False


End Sub

提前谢谢。

2 个答案:

答案 0 :(得分:1)

更改

ActiveWorkbook.Close SaveChanges:=False

ThisWorkbook.Close SaveChanges:=False

Activeworkbook指的是任何Activeworkbook,但Thisworkbook的目标是代码所在的工作簿。

答案 1 :(得分:-1)

现在就开始工作了。 需要关闭复制工作簿和当前的工作簿,我错过了另一个密切的界限。

Sub saveas()

*saves the workbook before removing marco
ThisWorkbook.Save

ActiveSheet.Shapes.Range(Array("Button 1")).Select
Selection.Delete

Worksheets(Array("Sheet1", "Sheet2", "Sheet3")).Copy
Application.DisplayAlerts = False
ActiveWorkbook.saveas Filename:="path1\list.xlsx"
ActiveWorkbook.saveas Filename:="path2\list.xlsx"
ActiveWorkbook.Close

ThisWorkbook.Close SaveChanges:=False


End Sub