检查Excel是否处于肮脏状态

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

通过脏状态我的意思是: – 当你在Excel上做任何事情,并closures保存button – Excel要求您保存该文件。 所以编辑文件时必须有一些标志。

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

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

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

如果我想知道自从打开Excel以来,Excel是否被编辑/弄脏。

请不要build议开始后台线程,如果Excel使用上述function处于编辑模式,请继续查看。

一个帮助将不胜感激。

看一下Workbook.Saved属性。 它会告诉你用户是否修改了自上次打开文档以来的文档。

 bool isDirty = !Globals.Application.ActiveWorkbook.Saved; 

在Excel VBA模块中,可以testingActiveWorkbook.Saved属性,如果它是False那么工作簿中有未保存的更改(“脏”)。 详情在这里 。 看看你是否可以从你的C#代码中检查这个属性。