禁用在一批Excel文件中另存为

时间:2016-11-16 16:13:49

标签: excel vba excel-vba

我一直在研究如何在Excel中禁用“另存为”,这似乎是可能的。我有一个宏循环通过一堆Excel文件进​​行更改。在该宏中,我想禁用所有文件的“另存为”。这可能吗?

2 个答案:

答案 0 :(得分:1)

使用应用程序对象。您只需将此行添加到在每个文件或工作簿中循环的代码中,以便禁用"另存为"对于每一个:

Application.CommandBars("Worksheet Menu Bar").Controls("File").Controls("Save As...").Enabled = False 
Application.CommandBars("Worksheet Menu Bar").Controls("File").Controls("Save").Enabled = False 

告诉我它是怎么回事。

答案 1 :(得分:0)

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

    MsgBox "You can't save this workbook!"
    Cancel = True

End Sub