【问题标题】:Disable Excel save option but allow macro save禁用 Excel 保存选项但允许宏保存
【发布时间】:2015-08-28 16:09:20
【问题描述】:

我正在创建一个 Excel 文件,我想禁用“保存”和“另存为...”选项。

我在网上找到了很多解决方案,比如 VBA 中的这个:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
     MsgBox "You can't save this workbook!"
     Cancel = True
End Sub

它阻止用户保存更改,但我无法保存我的更改,这就是问题所在,因为我需要在 VBA 代码中进行更多更改。

有没有办法保存我的宏更改?比如管理员模式等等...?

感谢您以后的回答。

【问题讨论】:

    标签: vba excel save


    【解决方案1】:

    使用全局变量覆盖保存禁用:

        Dim override as Boolean
    
        Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
             if Not(override) then
               MsgBox "You can't save this workbook!"
               Cancel = True
             end if
        End Sub
        Sub SaveMyChanges()
           override = true
           ActiveWorkbook.Save
           override = false
        End Sub
    

    【讨论】:

      【解决方案2】:

      您也可以在 VBA 的设计模式下保存。

      对不起,死灵,但这也有效,这就是我所做的。

      【讨论】:

        猜你喜欢
        • 2017-01-14
        • 2018-03-22
        • 1970-01-01
        • 2012-01-05
        • 2012-01-21
        • 1970-01-01
        • 2016-05-24
        • 2016-08-08
        • 1970-01-01
        相关资源
        最近更新 更多