作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
如何将现有列数据和格式复制到 Apache POI 中的下一列并将下一列向右移动。
我试过了。假设我的代码是这样的......
XSSFCell oldCell = worksheet.getRow(0).getCell(1);
XSSFCell newCell = worksheet.getRow(0).getCell(2);
if(styleMap != null) {
if(oldCell.getSheet().getWorkbook() == newCell.getSheet().getWorkbook()){
newCell.setCellStyle(oldCell.getCellStyle());
} else{
int stHashCode = oldCell.getCellStyle().hashCode();
XSSFCellStyle newCellStyle = styleMap.get(stHashCode);
if(newCellStyle == null){
newCellStyle = newCell.getSheet().getWorkbook().createCellStyle();
newCellStyle.cloneStyleFrom(oldCell.getCellStyle());
styleMap.put(stHashCode, newCellStyle);
}
newCell.setCellStyle(newCellStyle);
}
}
我可以将值从旧单元格复制到新单元格,但不会将现有列向右移动。
预先感谢您的帮助。
最佳答案
我已经有几年没有使用 POI 了,但如果我没记错的话,您必须遍历一行中的所有单元格,并将每个 Cell
中的列号更新为您想要的。没有神奇的“插入列”方法。请记住从右到左执行此操作以避免完全破坏工作表:-)
关于java - 如何在java xssf poi中移动列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21038935/
我是一名优秀的程序员,十分优秀!