我想以编程方式使用 excel 2007 的条件格式功能。我有以下情况。
我有 6 列数字
A B C D E F
100 25 25 15 20 50
....
if (C1/A1)*100 >= B1
我必须把它涂成红色。相同的规则适用于 D1、E1、F1 列。
我在 excel 2007 中看到了条件格式功能。但我想要一些关于如何在 C# 代码中实现它的指示。
我想以编程方式使用 excel 2007 的条件格式功能。我有以下情况。
我有 6 列数字
A B C D E F
100 25 25 15 20 50
....
if (C1/A1)*100 >= B1
我必须把它涂成红色。相同的规则适用于 D1、E1、F1 列。
我在 excel 2007 中看到了条件格式功能。但我想要一些关于如何在 C# 代码中实现它的指示。
我假设您很乐意使用 Interop,因为您没有另外说。这是我用来在 Excel 中设置条件格式的方法。它假定您已经Worksheet
在一个名为xlWorksheet
.
// Create a FormatCondition and add it to the specified range of cells, using the
// passed-in condition and cell colour
Excel.Range range = xlWorksheet.get_Range("C1", "C1");
Excel.FormatConditions fcs = range.FormatConditions;
Excel.FormatCondition fc = (Excel.FormatCondition)fcs.Add
(Excel.XlFormatConditionType.xlExpression, Type.Missing, "=IF($C$1/$A$1)*100 >= $B$1");
Excel.Interior interior = fc.Interior;
interior.Color = ColorTranslator.ToOle(Color.Red);
interior = null;
fc = null;
fcs = null;
range = null;
我已经猜到了你的预期用途,但你可以摆弄它来获得正确的公式和单元格引用。