easypoi导出时合并单元格
-
public static void mergeCells(Sheet sheet, int startRow,Integer... columns) 合并相同内容的单元格 参数: sheet startRow - 开始合并的行 columns - 需要进行合并的列
PoiMergeCellUtil.mergeCells(sheet, 2, 0, 1);
sheet:工作表
2:代表从第二行开始进行合并
0,1:代表进行合并第0列和第1列
只会合并上下相同数据的单元格
-
public static void mergeCells(Sheet sheet, Map<Integer,int[]> mergeMap, int startRow) 合并相同内容的单元格 参数: sheet mergeMap - key:需要合并的列,value--依赖的列,没有传空 startRow - 开始合并的行
Map<Integer,int[]> mergeMap = new HashMap<>(); int[] arr = {0,1}; //依赖第0列和第1列进行合并 mergeMap.put(0,arr);//合并第0列 mergeMap.put(1,arr);//合并第1列 PoiMergeCellUtil.mergeCells(sheet,mergeMap,2);//从第二行开始进行合并
只有第0列和第1列上下数据相同的单元格才会进行合并
例如
下图中,合并时依赖第一列和第二列,手机号相同但是下单人不同所以未合并
下单人相同,手机号不同,所以也没有合并
-
public static void mergeCells(Sheet sheet,Map<Integer,int[]> mergeMap,int startRow, int endRow) 合并相同内容的单元格 参数: sheet mergeMap - key:需要合并的列,value--依赖的列,没有传空 startRow - 开始合并的行 endRow - 结束合并的行
PoiMergeCellUtil.mergeCells(sheet,mergeMap,2,100);//第二行合并到第100行
和第二条类似,只是多了一个结束行。