禁用Excel保存按钮

时间:2012-02-10 09:31:08

标签: excel vba vsto save

如何禁用Excel保存按钮或覆盖其默认功能?我有一个VSTO Excel项目,并且不需要保存Excel工作簿本身,因为我们使用自己的方式使用WCF保存文档数据。当用户没有写权限时,它甚至会给我们带来问题:然后他得到一个“另存为”对话框,但仍然无效,因为我使用以下代码取消了保存事件:

void ThisWorkbook_BeforeSave(bool SaveAsUI, ref bool Cancel)
    {
        Cancel = true;
    }

我也可以使用以下方法取消“你想保存”提示:

 void ThisWorkbook_BeforeClose(ref bool Cancel)
    {
        this.Saved = true;
    }

但如果该文件是只读的,我单击“保存”按钮,则会收到“此文件为只读”消息。我不想得到它。

2 个答案:

答案 0 :(得分:2)

如果您使用的是Office 2010或2007,则可以加载一个功能区,该功能区禁用内置命令save和save-as。

我知道的功能区标记最全面的文档在这里:

MSDN Customise the Office Fluent Ribbon Interface - 1

MSDN Customise the Office Fluent Ribbon Interface - 2

MSDN Customise the Office Fluent Ribbon Interface - 3

答案 1 :(得分:0)

我发现如果您创建一个模板项目而不是一个工作簿项目,那么当您应用问题中的代码时,如果单击“保存”,则不会发生任何事情。