ピボットテーブルを作成する
Contents
[
Hide
]
ピボットテーブルの作成
Aspose.Cells を使用してピボットテーブルを作成する
Aspose.Cells を使用して、スプレッドシートにピボットテーブルを追加することができます。Aspose.Cells には、特定のクラスを使用してピボットテーブルを作成および制御するための特別なクラスがいくつかあります。これらのクラスは、ピボットテーブルの構築ブロックとして使用されます。
ピボットテーブルのオブジェクトは次のとおりです:
- PivotField: ピボットテーブルのフィールドを表します。
- PivotFieldCollection: ピボットテーブル内のすべての PivotField オブジェクトのコレクションを表します。
- PivotTable: ピボットテーブルを表します。
- PivotTableCollection: ワークシート上のすべてのピボットテーブルオブジェクトのコレクションを表します。
シンプルなピボットテーブルの作成
Aspose.Cells を使用してピボットテーブルを作成するには、以下の手順に従ってください:
- Cell オブジェクトの setValue メソッドを使用してワークシートセルにデータを追加します。このデータはピボットテーブルのデータソースとして使用されます。
- add クラスの PivotTableCollection メソッドを呼び出してワークシートにピボットテーブルを追加します。このデータはピボットテーブルのデータソースとして使用されます。
- PivotTableCollection から PivotTable オブジェクトにアクセスして、PivotTable のインデックスを渡します。
- PivotTable オブジェクトにカプセル化されたピボットテーブル内のいずれかのピボットテーブルオブジェクトを使用して、ピボットテーブルを管理します。
データソースとしてセルの範囲を割り当てる場合、範囲は左上から右下に設定する必要があります。例えば、「A1:C3」は有効であり、「C3:A1」は無効です。
以下のコード例は、上記の基本的な手順に従って簡単なピボットテーブルを作成する方法を示しています。コードを実行すると、ワークシートにピボットテーブルが追加されます:
対応するフィールドに基づいてピボットテーブルを作成する
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// 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"); |