poi导入excel一行中有合并的单元格怎么不让程序执行

poi导入excel一行中有合并的单元格怎么不让程序执行,第1张

方法/步骤:

1.

在excel中编辑好需要的数据

2.

添加新的一列,将光标移动到需要合并内容的位置

3.

在单元格中输入 =B2&C2 ,利用&符号将两个单元格的内容进行合并

4.

点击回车,合并后的内容就填充到单元格中了

//poi-3.7.jar

/**

* 合并单元格处理--加入list

*

* @param sheet

* @return

*/

public void getCombineCell(HSSFSheet sheet, List<CellRangeAddress>list) {

// 获得一个 sheet 中合并单元格的数量

int sheetmergerCount = sheet.getNumMergedRegions()

// 遍历合并单元格

for (int i = 0i <sheetmergerCounti++) {

// 获得合并单元格加入list中

CellRangeAddress ca = sheet.getMergedRegion(i)

list.add(ca)

}

}

/**

* 判断单元格是否为合并单元格

*

* @param listCombineCell

*存放合并单元格的list

* @param cell

*需要判断的单元格

* @param sheet

*sheet

* @return

*/

public static Boolean isCombineCell(List<CellRangeAddress>listCombineCell,

HSSFCell cell, HSSFSheet sheet) {

int firstC = 0

int lastC = 0

int firstR = 0

int lastR = 0

for (CellRangeAddress ca : listCombineCell) {

// 获得合并单元格的起始行, 结束行, 起始列, 结束列

firstC = ca.getFirstColumn()

lastC = ca.getLastColumn()

firstR = ca.getFirstRow()

lastR = ca.getLastRow()

if (cell.getColumnIndex() <= lastC&&cell.getColumnIndex()>= firstC) {

if (cell.getRowIndex() <= lastR &&cell.getRowIndex() >= firstR) {

return true

}

}

}

return false

}

}

添加区域,合并单元格

[c-sharp] view plaincopyprint?

1.Region region = new Region((short)rowFrom,(short)columnFrom,(short)rowTo

2.(short)columnTo)//合并从第rowFrom行columnFrom列

3.sheet.addMergedRegion(region)// 到rowTo行columnTo的区域

4.//得到所有区域

5.sheet.getNumMergedRegions()


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/8022007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存