2013-03-12 178 views
8

有沒有什麼辦法可以知道Excel是否處於髒狀態。檢查Excel是否處於髒狀態

髒狀態我的意思是: - 當您對Excel執行任何操作並關閉保存按鈕時 - Excel會要求您保存該文件。 因此,編輯文件時必須設置一些標誌。

我可以通過C#代碼瞭解Excel文件的狀態嗎?

搜了很多,但沒有太多的幫助可用。有一個選項允許您通過查看GetRibbonControlEnabled("FileNewDefault")

來了解Excel是否處於編輯狀態。在這種情況下,您只能在執行此方法時看到Excel處於編輯狀態。

如果我想知道自從Excel打開時Excel是否被編輯/弄髒,該怎麼辦。

請不要建議開始後臺線程,如果Excel使用上述功能處於編輯模式,它將繼續查看。

幫助將不勝感激。

回答

5

看看Workbook.Saved屬性。它會告訴你用戶自上次打開文檔以來是否修改過該文檔。

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

回覆:「isDirty」:我想你錯過了一個「不」的運營商在那裏.... – 2013-03-12 15:43:37

+0

更正 - 好抓@GordThompson! – SliverNinja 2013-03-12 16:52:01

2

在一個Excel VBA模塊一個可以測試ActiveWorkbook.Saved屬性,並且如果它是False則工作簿有未保存的更改(是「髒的」)。詳情here。看看你是否可以從你的C#代碼中檢查這個屬性。

相關問題