如何将自定义值设置为 CellRangeAddress[]

how to set custom value to CellRangeAddress[]

我们可以添加 CellRangeAddress[] 但是像这样使用它 :

$P:$P,$P:$P,$P:$P,$P:$P6,$P1:$P1,$P6:$P0

所以不要像这样给它一个值:

CellRangeAddress[] my_data_range = new CellRangeAddress[]{CellRangeAddress.valueOf("P32:P130")};

我有 String contine 相同的范围,但在 thiam 之间,所以它喜欢不止一个范围。

Excel的输出应该是这样的:

我打开了 .xlsx 文件的 .zip 文件并查看了 Sheet.xml >> 我喜欢这样 :

<conditionalFormatting sqref="P26 P45:P58 P28:P40 P63:P73 P78:P266">
    <cfRule type="iconSet" priority="89">
        <iconSet iconSet="3Flags">
            <cfvo type="num" val="$L4" />
            <cfvo type="num" val="$L4" />
            <cfvo type="num" val="$L3" />
        </iconSet>
    </cfRule>
</conditionalFormatting>

它位于这一行:sqref="P26 P45:P58 P28:P40 P63:P73 P78:P266">

但是我们如何在 java 中做到这一点?

CellRangeAddress[]CellRangeAddress 的数组。所以不需要只设置一个数组项。也可以有多个项目。

  //CellRangeAddress[] my_data_range = new CellRangeAddress[]{CellRangeAddress.valueOf("P32:P130")};
  CellRangeAddress[] my_data_range = new CellRangeAddress[]{
      CellRangeAddress.valueOf("P32:P38"),
      CellRangeAddress.valueOf("P43:P45"),
      CellRangeAddress.valueOf("P50:P76"),
      CellRangeAddress.valueOf("P81:P116"),
      CellRangeAddress.valueOf("P121:P121"),
      CellRangeAddress.valueOf("P126:P130")      
  };