1

我正在开发专门针对 Excel XP 的 C# COM 加载项。我需要显示我自己的“另存为”对话框,而不是普通的 Excel 对话框。

我尝试处理 applicationObject.WorkbookBeforeSave 和 ActiveWorkbook.BeforeSave 事件并将“ref bool Cancel”参数设置为 true,但 Excel 仍会弹出“另存为”对话框。在这些事件处理程序中保存工作簿没有任何区别。

如果我处理 Save 按钮上的 Click 事件,则不会弹出对话框,但是当用户按下 Ctrl-S 进行保存时不会出现这种情况。

有任何想法吗?

谢谢。

4

1 回答 1

1

我找到了解决方案。在 Excel XP 中尝试通过 C# 取消某些事件似乎存在问题。我发现在这个线程中使用代码可以解决我的问题:http ://www.tech-archive.net/Archive/Excel/microsoft.public.excel.programming/2009-10/msg04732.html

编辑:这里详细介绍了导致我的问题和解决方法的问题:http: //support.microsoft.com/kb/830519

于 2011-09-24T12:18:15.340 回答