(我是英语周,所以首先请原谅我解释不好:D)
我通过我的应用程序打开一个 excel 文件。
我在 Excel 中有一个加载项,在功能区中有一个用于保存的按钮(正是保存按钮执行的保存操作)按钮的 Click 事件代码在这里:
Globals.ThisAddIn.Application.ActiveWorkbook.Save();
在我的应用程序中,我将一个方法(称为 WorkbookBeforeSave)分配给工作簿的“BeforeSave”事件处理程序,该处理程序将工作簿手动保存在我的自定义目录中。
private void WorkbookBeforeSave(bool saveasui, ref bool cancel)
{
_excelApp.EnableEvents = false;//_excelApp is my Excel Application
if (!_excelWorkbook.Saved)//_excelWorkbook is Active Excel Workbook
{
_excelWorkbook.SaveCopyAs(_savedFilePath);//_savedFilePath is my custom directory
_excelWorkbook.Saved = true;
}
cancel = true;
_excelApp.EnableEvents = true;
}
问题是当我单击原始 Excel 保存按钮“SaveCopyAs”方法正常工作但单击我的自定义保存按钮时“SaveCopyAs”方法不起作用。 (没有抛出异常,所有代码都已编译和调试)