当前位置: 首页 > 知识库问答 >
问题:

Excel单元格POI的多种样式

越雨泽
2023-03-14

我想应用颜色的单元格以及格式的单元格值(例如,日期,金额)。但当我应用两个单元格样式时,只有最后一个样式被应用在单元格上。

//before this colourCellStyle and dateCellStyle are the formatting style
cell9 = row.createCell(9);
cell9.setCellValue(getLoadDate());
cell9.setCellStyle(colourCellStyle);
cell9.setCellStyle(dateCellStyle);

共有1个答案

谷涵容
2023-03-14

不能将多个单元格样式应用于单个单元格。应用的最后一个单元格样式将覆盖单元格上任何预先存在的单元格样式。设置多个cellstyle不会组合每个样式的设置属性。

解决方案是创建另一个CellStyle,该CellStyle具有其他CellStyle的所需属性。可以使用ClonestyleFrom方法从一个CellStyle的属性开始。

CellStyle combined = workbook.createCellStyle();
combined.cloneStyleFrom(colourCellStyle);
combined.setDataFormat(dateCellStyle.getDataFormat());
// You can copy other attributes to "combined" here if desired.

cell9.setCellStyle(combined);

这种技术可以推广到克隆任何现有单元格样式,并从第二个现有单元格样式复制单个属性。一如既往,重用任何现有的CellStyle,但如果需要不同的属性组合,则必须创建并使用新的CellStyle

 类似资料:
  • 问题内容: 我想将颜色应用于单元格以及“设置单元格格式”值(例如,日期,金额)。但是当我应用两个单元格样式时,只会将最后一种样式应用于单元格。 问题答案: 多个单元格样式不能应用于单个。应用的最后一个单元格样式将覆盖上任何现有的单元格样式。设置多个不会合并每种样式的设置属性。 解决方案是创建一个具有其他两个属性的属性。您可以使用该方法以one的属性开头。 可以普遍使用此技术来克隆任何现有单元格样式

  • 有人能给我一个解决方案,我可以在单元格为空时读取应用到单元格的样式吗? 谢了。

  • 我正在开发一个上传excel文件并将其值插入数据库的应用程序。 我的代码如下: 所以当我上传一个像下面这样的excel文件时,它会工作并将其数据插入db。 但是,当我上传像以下这样的excel文件时,db不会更新。 我可以问你如何解决这个问题,所以即使单元格的值是=ROUNDUP((600),2),而不是600,它仍然更新db。 提前谢谢你。

  • 我正在尝试使用Java中的Apache Poi将一些结果写入excel文件。我将结果存储在String变量中,然后在data.put调用中使用这些变量,前两个可以正常工作,但第三个导致空白单元格。当我打印到system.out.println()时,它显示良好? //创建空白工作簿XSSFWorkbook workbook=new XSSFWorkbook(); 子节点名称:#text 子节点文本

  • 我有一个预定义的excel文件,这是一种形式,其中大部分的信息已经提到,但我必须只输入姓名,地址等细节从我的应用程序用Java。 我可以存储单元格(如A12、B20等),并使用Apache POI库和方法轻松地更新这些单元格。但我希望它是动态的。例如,如果用户将名称单元格从A12更改为B12,Java代码不应该被修改。