此方法createConditionalFormattingColorScaleRule()
在任何POI版本中都不可用,但在此链接Conditional Formatting Color Scale Rule中进行了解释
此接口ConditionalFormattingThreshold.RangeType
在所有POI版本中都不可用,但在此链接Conditional Formatting Threshold Range Type
请建议这些方法/接口是否需要由开发人员自己定义,或者他们是否仍在针对未来版本进行apache POI开发?
任何帮助/建议都将受到高度赞赏。感谢
答案 0 :(得分:1)
如Apache POI Changelog中所详述,在POI 3.13 beta 1之后添加了对条件格式颜色比例规则的支持。包含它的第一个版本是3.13 beta 2.(这应该会在几天内发布) ,在那之前你需要使用每晚构建)
您可以在Conditional Formatting unit tests中找到许多设置新色标CF规则的示例。从那里开始,你会想要像
这样的东西Workbook wb = new XSSFWorkbook();
Sheet sheet = workbook.createSheet();
SheetConditionalFormatting sheetCF = sheet.getSheetConditionalFormatting();
ConditionalFormattingRule rule1 =
sheetCF.createConditionalFormattingColorScaleRule();
ColorScaleFormatting clrFmt = rule1.getColorScaleFormatting();
clrFmt.getThresholds()[0].setRangeType(RangeType.MIN);
clrFmt.getThresholds()[1].setRangeType(RangeType.NUMBER);
clrFmt.getThresholds()[1].setValue(10d);
clrFmt.getThresholds()[2].setRangeType(RangeType.MAX);
CellRangeAddress [] regions = { CellRangeAddress.valueOf("A1:A5") };
sheetCF.addConditionalFormatting(regions, rule1);