2016-08-02 36 views
2

我在網上搜索了很多,但無法找到錯誤的解決方案。數據透視表中列數相同的列索引

代碼

 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); 

問題:我嘗試添加RowLabel對指數19,並且還試圖計算列19

我運行後,它顯示了一個錯誤的文件已損壞。但是,當我更改addColumnLabel中的索引。有用。

任何意見或建議將不勝感激。

回答

1

所以這裏的問題是,當你將行標籤設置爲列19,它不會將其設置爲數據字段,並且當你對同一列進行計數失敗時,快速修復就是設置該特定列不僅可以作爲axisRow,還可以通過數據字段

pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 19); 
pivotTable.addRowLabel(19); 
pivotTable.getCTPivotTableDefinition().getPivotFields().getPivotFieldArray(19).setDataField(true); 

試試吧!