近日因專案需要,要生成的大量的很詭異的excel報表。其中,有一報表是要生成條件格式的。一直使用poi生成excel報表,於是生成條件格式也自然使用poi。但生成條件格式時poi有乙個很容易忽略的bug。條件格式選擇公式時,不能正常的生成條件格式。**如下:
hssfconditionalformattingrule rule1 = formating.createconditionalformattingrule("$a$1<96");
hssfconditionalformattingrule rule = ;
hssfpatternformatting patternfmt1 = rule1.createpatternformatting();
patternfmt1.setfillbackgroundcolor(hssfcolor.light_green.index);
region regions = ;
formating.addconditionalformatting(regions, rule);
此時生成的excel中的條件格式不能正確顯示,於是又一次翻開poi的源**,進行檢視,發現在使用cfrulerecord進行建立公式時有bug,需修改cfrulerecord類中的**。修正如下:將field_1_condition_type = condition_type_cell_value_is;行注釋掉,重新打包。於是問題解決,正常生成條件格式的,並且是公式的excel。
POI生成excel檔案
entranceguarduploadeventmodel eventmodel new entranceguarduploadeventmodel listdatalist entranceguarduploadeventservice.queryall eventmodel 第一步,建立乙個we...
poi生成excel相關設定
poi生成excel整理 設定邊框 字型 顏色 加粗 居中 hssfworkbook wb new hssfworkbook hssfsheet sheet wb.createsheet hssfcellstyle setborder wb.createcellstyle 一 設定背景色 setbo...
POI 生成Excel存在的問題
1.後面的內容會覆蓋前面的內容 sheet.addmergedregion new cellrangeaddress 4,6,0,0 cell sxssfcell sheet.createrow 4 createcell 0 cell.setcellvalue 機構名稱 cell.setcellst...