使用VBA,我想禁用(或隐藏)MS Word 2013中“文件”菜单中显示的“保存并保存”按钮,以便用户无法单击它们。
我尝试使用此功能禁用这些按钮:
Word.CommandBars("File").Controls("&Save").Enabled = False
Word.CommandBars("File").Controls("&Save").Visible = False
但这没有效果。有什么办法可以禁用这些按钮吗?
答案 0 :(得分:3)
自2007版以来,“菜单控件”不再通过CommandBars对象模型进行控制。因此,要控制菜单项,我必须定义必须要合并到文档中的Ribbon XML,或者作为一部分加载外接。
要在Word 2010中禁用Save和SaveAs,我使用了以下XML代码:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<commands>
<command idMso="FileSave" enabled="false" />
<command idMso="FileSaveAsMenu" enabled="false" />
<command idMso="FileSaveAsWordDocx" enabled="false" />
<command idMso="FileSaveAsWordDotx" enabled="false" />
<command idMso="FileSaveAs" enabled="false" />
<command idMso="FileSaveAsWord97_2003" enabled="false" />
<command idMso="FileSaveAsPdfOrXps" enabled="false" />
<command idMso="FileSaveAsOtherFormats" enabled="false" />
<command idMso="FileSaveToDocumentManagementServer" enabled="false" />
<command idMso="SaveSelectionToQuickPartGallery" enabled="false" />
<command idMso="FrameSaveCurrentAs" enabled="false" />
<command idMso="FileSaveAsWordOpenDocumentText" enabled="false" />
</commands>
</customUI>
我使用Custom UI Editor来执行和测试此代码。这个link提供了有关如何使用自定义UI编辑器的很好的培训。
由于
答案 1 :(得分:2)
您可以使用Workbook_BeforeSave
事件。
http://msdn.microsoft.com/en-us/library/office/ff840057.aspx
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
End Sub