0

如何获取 excel interop 2007 中单元格的显示格式。我有一个单元格,其中字体的粗细取决于另一个单元格中的值。无论是否满足条件,cell.Font.Bold 和 cell.Style.Font.Bold 属性始终为 false。(单元格的类型为 Range)。那么有没有办法像用户在 Excel 中看到的那样查询单元格的样式?

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,但我还没有找到一种方法来知道条件是否满足。

干杯
乌利

4

1 回答 1

1

不幸的是,Excel 没有为您提供“开箱即用”的功能来告诉您已满足哪些条件。我见过的能告诉你哪些条件处于活动状态的最佳代码是Chuck Pearson 的 ActiveCondition代码。您必须将其从 VBA 转换为 C#。

于 2011-01-31T12:03:42.863 回答