【问题标题】:How to Disable Save, SaveAs button in MS-Word 2010/2013 using VBA如何使用 VBA 在 MS-Word 2010/2013 中禁用保存、另存为按钮
【发布时间】:2019-05-13 08:22:41
【问题描述】:

使用 VBA,我想禁用(或隐藏)MS Word 2013 的“文件”菜单中显示的“保存”和“另存为”按钮,以便用户无法单击它们。

我已尝试使用以下方法禁用这些按钮:

Word.CommandBars("File").Controls("&Save").Enabled = False
Word.CommandBars("File").Controls("&Save").Visible = False

但这没有任何效果。有什么办法可以禁用这些按钮?

【问题讨论】:

    标签: vba


    【解决方案1】:

    自 2007 版以来,“菜单控件”不再通过 CommandBars 对象模型进行控制。因此,为了控制菜单项,我必须定义功能区 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 编辑器的很好的培训。

    谢谢

    【讨论】:

      【解决方案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
      

      【讨论】:

      • 感谢您的快速回复。我正在尝试这个。但是您确定这也会禁用“保存”按钮吗?
      • @rsKRISH 它不会禁用保存按钮。但是当你点击保存按钮时,工作簿不会被保存。
      • 好的,谢谢桑托什。但是有什么办法我也可以禁用保存按钮。?
      • @rsKRISH 我相信这是更好的方法。
      • 是的,毫无疑问这是一个更好的方法,但我也需要禁用按钮。
      猜你喜欢
      • 1970-01-01
      • 2012-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-01
      • 2013-01-04
      • 1970-01-01
      相关资源
      最近更新 更多