Apache POI - 生成引用其他单元格的条件格式

时间:2013-05-14 14:12:03

标签: excel apache-poi conditional-formatting xssf

我正在使用Apache POI在Java中生成XSSF电子表格。我要做的是生成一个条件格式化公式,类似于“如果单元格中的值$ A2 =”X“,将$ C2变为绿色”,然后将其一直应用到C列。

我没有在网上看过任何这样的例子 - 我看到的所有例子一次只涉及一列,而不是参考。有可能吗?

conditional formatting example

2 个答案:

答案 0 :(得分:3)

您要应用的条件格式设置规则类似于:

 SheetConditionalFormatting scf = sheet.getSheetConditionalFormatting();
 ConditionalFormattingRule cfr1 = scf.createConditionalFormattingRule("(indirect(address(row(), column() - 1))) = \"CDS correct\"");

该公式可以找到当前单元格左侧第二个单元格的值。然后,您可以使用适合您已填充的C列中的行数的CellRangeAddress。

答案 1 :(得分:0)

您需要将它们放入()以允许它。 试试这个,在CondiFormat到单元格C2中使用一个公式来确定要格式化的单元格并输入这个公式=($F2="CDS correct")当你的F列有“CDS正确”时,这将是真的

希望这有帮助,

-Scheballs relative reference conditional formatting