Apache POI Excel固定(冻结)单元格
今天在已固定好的模板上添加数据后发现,原本的固定单元格无法被固定,原因可能是在赋值/新建单元格/赋样式的时候破坏了原本的固定.
经查阅资料后发现在POI中 有createFreezePane方法能直接固定单元格,具体参数如下:
sheet.createFreezePane(int cellNum,int rowNum,int firstCellNum,int firstRollNum );
四个参数分别代表:
cellNum:表示要冻结的列数;
rowNum:表示要冻结的行数;
firstCellNum:表示被固定列右边第一列的列号;
firstRollNum :表示被固定行下边第一列的行号;
注意: 后2个参数均从0开始计算列号和行号,且firstCellNum>=cellNum &&firstRollNum >=cellNum
比如:
sheet.createFreezePane(1,0,1,0);//就是固定了首列,列号的显示为:A,BCDEF...
sheet.createFreezePane(1,0,3,0);//固定了首列,列号的显示为:A,DEF...
//注意:BC列不是被隐藏,而是默认显示列为A,DEF,若想要看BC列,只需移动滚轮即可.行号同理