2016-05-02 20 views
0

XSSFシートでConditionalFormattingを使用して行を塗りつぶすカスタム色を設定しようとしています。Apache POI XSSFでカスタム色を条件付きで設定する

私は

SheetConditionalFormatting sheetCF = sheet.getSheetConditionalFormatting(); 
ConditionalFormattingRule rule1 = sheetCF.createConditionalFormattingRule("MOD(ROW(),2)=0"); 
PatternFormatting fill1 = rule1.createPatternFormatting(); 
XSSFColor customColor = new XSSFColor(new byte[] {alpha, red, green, blue}); 


fill1.setFillForegroundColor(new XSSFColor(new java.awt.Color(128, 0, 128))); //1 
fill1.setFillForegroundColor(customColor); //2 

そして、それらの2つの作品のどちらも試してみました。 XSSFColorを受け入れません。

私はこのBug Reportを見て、両方の「ハック」が正常に機能していると試してみました。またthe docは役に立たなかった。

は私がやっていることを理解する:

setFillForegroundColor(new XSSFColor(new java.awt.Color(red,green,blue)));  

は、単一セルのために働く可能性があります。

私が遭遇したソリューションは、数年前のもので、動作していないようです。 XSSFシートに ConditionalFormattingとしてカスタムRGBまたはHexカラーを入力できるようにするには、離れていてください。

助けが必要ですか? thisthis

はまた、私のような構文解析エラーを回避するために、POI 3.9を実行しています。

答えて

0

各色(short)の新しいルールを作成するためにfor loopを作成しました。それは62の周りで段階的に消え、そこから少し異なる色合いで80になります。 カスタムではありませんが、少なくとも色に数字を付けることはできます。

関連する問題