Pivot Tabelle erstellen
Pivot-Tabelle erstellen
Pivot-Tabelle mit Aspose.Cells erstellen
Mit Aspose.Cells ist es möglich, Pivot-Tabellen zu Arbeitsmappen hinzuzufügen. Aspose.Cells verfügt über eine Reihe spezieller Klassen, die speziell zur Erstellung und Steuerung von Pivot-Tabellen verwendet werden. Diese Klassen werden zum Erstellen und Setzen der Eigenschaften eines PivotTable-Objekts verwendet, das als Bausteine der Pivot-Tabelle dient.
Die Pivot-Tabellenobjekte sind:
- PivotField: es repräsentiert ein Feld in einer Pivot-Tabelle.
- PivotFieldCollection: es repräsentiert eine Sammlung aller PivotField-Objekte in der Pivot-Tabelle.
- PivotTable: es repräsentiert eine Pivot-Tabelle.
- PivotTableCollection: es repräsentiert die Sammlung aller Pivot-Tabellenobjekte auf dem Arbeitsblatt.
Erstellen einer einfachen Pivot-Tabelle
Um eine Pivot-Tabelle mit Aspose.Cells zu erstellen, befolgen Sie bitte die folgenden Schritte:
- Fügen Sie einige Daten zu Arbeitsblattzellen hinzu, indem Sie die Cell-Methode des setValue-Objekts verwenden. Diese Daten werden als Datenquelle für die Pivot-Tabelle verwendet.
- Fügen Sie dem Arbeitsblatt eine Pivot-Tabelle hinzu, indem Sie die Methode add der Klasse PivotTableCollection aufrufen, die im Worksheet-Objekt encapsulated ist.
- Greifen Sie von der PivotTableCollection auf das PivotTable-Objekt zu, indem Sie den PivotTable-Index übergeben.
- Verwenden Sie eines der oben erklärten Pivot-Tabellenobjekte, die im PivotTable-Objekt encapsulated sind, um die Pivot-Tabelle zu verwalten.
Das nachfolgende Codebeispiel zeigt, wie man eine einfache Pivot-Tabelle gemäß den oben aufgeführten Grundschritten erstellt. Beim Ausführen des Codes wird eine Pivot-Tabelle dem Arbeitsblatt hinzugefügt:
Erstellen einer Pivot-Tabelle basierend auf einem entsprechenden Feld
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the resource directory | |
String dataDir = Utils.getSharedDataDir(CreatePivotTable.class) + "PivotTables/"; | |
//Instantiating a Workbook object | |
Workbook workbook = new Workbook(); | |
//Obtaining the reference of the newly added worksheet | |
int sheetIndex = workbook.getWorksheets().add(); | |
Worksheet sheet = workbook.getWorksheets().get(sheetIndex); | |
Cells cells = sheet.getCells(); | |
//Setting the value to the cells | |
Cell cell = cells.get("A1"); | |
cell.setValue("Sport"); | |
cell = cells.get("B1"); | |
cell.setValue("Quarter"); | |
cell = cells.get("C1"); | |
cell.setValue("Sales"); | |
cell = cells.get("A2"); | |
cell.setValue("Golf"); | |
cell = cells.get("A3"); | |
cell.setValue("Golf"); | |
cell = cells.get("A4"); | |
cell.setValue("Tennis"); | |
cell = cells.get("A5"); | |
cell.setValue("Tennis"); | |
cell = cells.get("A6"); | |
cell.setValue("Tennis"); | |
cell = cells.get("A7"); | |
cell.setValue("Tennis"); | |
cell = cells.get("A8"); | |
cell.setValue("Golf"); | |
cell = cells.get("B2"); | |
cell.setValue("Qtr3"); | |
cell = cells.get("B3"); | |
cell.setValue("Qtr4"); | |
cell = cells.get("B4"); | |
cell.setValue("Qtr3"); | |
cell = cells.get("B5"); | |
cell.setValue("Qtr4"); | |
cell = cells.get("B6"); | |
cell.setValue("Qtr3"); | |
cell = cells.get("B7"); | |
cell.setValue("Qtr4"); | |
cell = cells.get("B8"); | |
cell.setValue("Qtr3"); | |
cell = cells.get("C2"); | |
cell.setValue(1500); | |
cell = cells.get("C3"); | |
cell.setValue(2000); | |
cell = cells.get("C4"); | |
cell.setValue(600); | |
cell = cells.get("C5"); | |
cell.setValue(1500); | |
cell = cells.get("C6"); | |
cell.setValue(4070); | |
cell = cells.get("C7"); | |
cell.setValue(5000); | |
cell = cells.get("C8"); | |
cell.setValue(6430); | |
PivotTableCollection pivotTables = sheet.getPivotTables(); | |
//Adding a PivotTable to the worksheet | |
int index = pivotTables.add("=A1:C8", "E3", "PivotTable2"); | |
//Accessing the instance of the newly added PivotTable | |
PivotTable pivotTable = pivotTables.get(index); | |
//Unshowing grand totals for rows. | |
pivotTable.setRowGrand(false); | |
//Dragging the first field to the row area. | |
pivotTable.addFieldToArea(PivotFieldType.ROW, 0); | |
//Dragging the second field to the column area. | |
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1); | |
//Dragging the third field to the data area. | |
pivotTable.addFieldToArea(PivotFieldType.DATA, 2); | |
//Saving the Excel file | |
workbook.save(dataDir + "CreatePivotTable_out.xls"); |