美文网首页
EasyExcel 筛选和冻结固定表头

EasyExcel 筛选和冻结固定表头

作者: 林万程 | 来源:发表于2020-05-19 20:30 被阅读0次

    添加一个类

    import com.alibaba.excel.write.handler.SheetWriteHandler;
    import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
    import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
    import org.apache.poi.ss.usermodel.Sheet;
    import org.apache.poi.ss.util.CellRangeAddress;
    
    public class FreezeAndFilter implements SheetWriteHandler {
    
        public int colSplit = 0, rowSplit = 1, leftmostColumn = 0, topRow = 1;
        public String autoFilterRange = "1:1";
    
        @Override
        public void beforeSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
    
        }
    
        @Override
        public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
            Sheet sheet = writeSheetHolder.getSheet();
            sheet.createFreezePane(colSplit, rowSplit, leftmostColumn, topRow);
            sheet.setAutoFilter(CellRangeAddress.valueOf(autoFilterRange));
        }
    }
    

    使用方法

            ExcelWriter writer = EasyExcel.write(outputStream).build();
            WriteSheet totalSheet = EasyExcel
                    .writerSheet(1, "总分")
                    .head(DownloadData.class)
                    .registerWriteHandler(new FreezeAndFilter())
                    .build();
            writer.write(Collections.singletonList(totalsData), totalSheet);
            writer.finish();
    

    我的原回答:
    https://github.com/alibaba/easyexcel/issues/874

    相关文章

      网友评论

          本文标题:EasyExcel 筛选和冻结固定表头

          本文链接:https://www.haomeiwen.com/subject/ppsiohtx.html