Java POI 3.16 XSSF数据透视表 - 如何将标签名称设置为第一列

时间:2017-06-23 10:40:18

标签: java label apache-poi pivot-table

为什么数据透视表中第一列的名称未自动设置,但设置了以下列的名称。

我生成像这样的数据透视表:

int firstRow = sheet.getFirstRowNum() + firstDataRow;
int lastRow = sheet.getLastRowNum();
int firstCol = sheet.getRow(0).getFirstCellNum();
int lastCol = sheet.getRow(firstRow).getLastCellNum();

CellReference topLeft = new CellReference(firstRow, firstCol);
CellReference botRight = new CellReference(lastRow, lastCol - 1);

AreaReference areaRef = new AreaReference(topLeft, botRight);

XSSFPivotTable pivotTable = pivotSheet.createPivotTable(areaRef,
        new CellReference(firstRow, firstCol), sheet);

pivotTable.addRowLabel(lastCol - 1); // Month
pivotTable.addRowLabel(6); // User
pivotTable.addRowLabel(lastCol - 2); // State
pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 0,
        resBundle.getString("WG_NM")); // count

CTPivotFields pFields = 
pivotTable.getCTPivotTableDefinition().getPivotFields();
pFields.getPivotFieldArray(lastCol - 1).setOutline(false);
pFields.getPivotFieldArray(6).setOutline(false);
pFields.getPivotFieldArray(lastCol - 2).setOutline(false);

结果是:enter image description here

第一列的名称应为月份。

有没有办法手动设置?

0 个答案:

没有答案