2011-01-28 96 views
0

如何在Excel Interop 2007中獲得單元格的顯示格式。我有一個單元格,其中字體的粗體取決於另一個單元格中的值。無論條件是否滿足,cell.Font.Bold和cell.Style.Font.Bold屬性始終爲false。 (單元格的類型是Range)。那麼有沒有辦法查詢單元格的樣式,因爲用戶會在Excel中看到它?Excel Interop 2007中的條件格式

workbook = application.Workbooks.Open(fileName); 
var worksheet = (Worksheet)workbook.Worksheets["Test"]; 

var cell = (Range)worksheet.Cells[8, 3]; 
var style = (Style)cell.Style; 
strb.AppendLine("Bold: " + cell.Font.Bold); // -> False 
strb.AppendLine("Bold: " + style.Font.Bold);// -> False 

我也試過使用FormatConditions,但在那裏我還沒有找到一種方法來知道條件是否滿足。

乾杯
Wullie

回答

1

不幸的是Excel不給你函數「開箱即用」,告訴您哪些條件已經具備。我見過的最好的代碼將告訴你哪些條件處於活動狀態是Chuck Pearson's ActiveCondition代碼。你必須將它從VBA翻譯成C#。