2016-11-03 4 views
0

So arbeite ich an einem Programm, das eine Textdatei liest und diese Daten in eine Excel-Arbeitsmappe schreibt. Nachdem die Daten geschrieben sind, erstelle ich Pivot-Tabellen aus den Daten. Um Stil in der Pivot-Tabelle zu erhalten, habe ich den ganzen Arbeitsbuch-Stil festgelegt, der sich nur auf die Blätter mit den Pivot-Tabellen bezieht und nicht auf die Datenblätter. Jetzt möchte ich ein Blatt mit Pivot-Tabelle aus dem Arbeitsbuchstil ausschließen. Gibt es eine Möglichkeit, ein Blatt auszuschließen oder den Stil für die Blätter festzulegen, die es benötigen?Apache POI, wie man den Arbeitsbuchstil auf alle Pivot-Tabellen anwendet. Wie schließe ich Blätter aus?

Code für Arbeitsmappe Stil:

wb.createDataFormat().putFormat((short) 0, "_($* #,##0.00_);_($* (#,##0.00);_($* \"-\"??_);_(@_)"); 

Pivot-Tabelle:

CellReference cr = new CellReference("A1"); 
CellReference c1 = new CellReference(0, 0); 
CellReference c2 = new CellReference(data.getPhysicalNumberOfRows() - 1, data.getRow(0).getLastCellNum() - 1); 

AreaReference ar = new AreaReference(c1, c2); 
XSSFPivotTable pivotTable = sheet.createPivotTable(ar, cr, data); 

pivotTable.getCTPivotTableDefinition().getPivotFields().getPivotFieldArray(4).setAxis(STAxis.AXIS_COL); 
pivotTable.getCTPivotTableDefinition().getPivotFields().getPivotFieldArray(4).addNewItems(); 
pivotTable.getCTPivotTableDefinition().getPivotFields().getPivotFieldArray(4).getItems().addNewItem() 
     .setT(STItemType.DEFAULT); 

pivotTable.getCTPivotTableDefinition().addNewColFields().addNewField().setX(4); 

pivotTable.addRowLabel(10); 
pivotTable.addRowLabel(11); 
pivotTable.addRowLabel(1); 
pivotTable.addColumnLabel(DataConsolidateFunction.COUNT, 0); 

i bereits versucht, den Stil für die Zellen in dem Blatt zu setzen, sondern hat nicht funktioniert. irgendwelche Vorschläge?

Antwort

Verwandte Themen