13

有什么方法可以知道 Excel 是否处于脏状态。

脏状态是指:- 当您在 Excel 上执行任何操作并关闭保存按钮时 - Excel 会要求您保存文件。因此,在编辑文件时必须设置一些标志。

我可以通过 C# 代码知道 Excel 文件的状态吗?

搜索了很多,但没有太多帮助。有一个选项可以让您通过查看 Excel 是否处于编辑状态GetRibbonControlEnabled("FileNewDefault")

在这种情况下,您只能在执行此方法时查看 Excel 是否处于编辑状态。

如果我想知道 Excel 自打开以来是否被编辑/弄脏了怎么办?

请不要建议使用上述功能启动后台线程,该线程会一直查看 Excel 是否处于编辑模式。

非常感谢您的帮助。

4

2 回答 2

8

看看Workbook.Saved物业。它会告诉您自上次打开文档以来用户是否修改了文档。

bool isDirty = !Globals.Application.ActiveWorkbook.Saved;
于 2013-03-12T15:37:19.230 回答
3

在 Excel VBA 模块中,可以测试该ActiveWorkbook.Saved属性,如果是,False则工作簿具有未保存的更改(“脏”)。详情在这里。看看您是否可以从 C# 代码中检查该属性。

于 2013-03-12T15:37:28.190 回答