我在线搜索了很多,但无法找到错误的解决方案。
代码
AreaReference areaRef = new AreaReference("A1:T"+ sheet.getLastRowNum());
CellReference cellRef = new CellReference("A2");
XSSFPivotTable pivotTable = summarysheet.createPivotTable(areaRef,cellRef,sheet);
pivotTable.addRowLabel(19);
pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 19);
问题:我正在尝试在索引19上添加RowLabel并尝试计算第19列。
运行后,显示文件已损坏的错误。但是当我在addColumnLabel中更改索引时。有用。
任何建议或建议都将受到高度赞赏。
答案 0 :(得分:1)
所以这里的问题是当你将行标签设置为列19时,它不会将其设置为数据字段,并且当你对同一列进行计数时它会失败,快速解决方法是将该特定列设置为不仅作为axisRow,但也作为数据字段
pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 19);
pivotTable.addRowLabel(19);
pivotTable.getCTPivotTableDefinition().getPivotFields().getPivotFieldArray(19).setDataField(true);
试一试!!!