Excelスプレッドシートのピボットテーブルは、インタラクティブな方法でデータを要約するために使用されます。ワークシートに多数の請求書のデータがあるとします。その場合、ピボットテーブルを使用して、顧客または製品ごとにグループ化された請求書を合計できます。この記事では、プログラムでExcelでピボットテーブルを処理する方法を学習します。特に、Javaを使用してExcelでピボットテーブルを作成する方法を理解するようになります。さらに、ピボットテーブルに基づいてチャートも生成します。

Excelでピボットテーブルを作成するJavaAPI

Excelのピボットテーブルを作成するには、Aspose.Cells for Javaを使用します。これは、Javaアプリケーション内からExcelファイルを生成、変更、および変換できる強力なAPIです。 APIをダウンロードするか、次のMaven構成を使用してインストールできます。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>21.4</version>
</dependency>

Javaを使用してExcelでピボットテーブルを作成する

以下は、Javaを使用してExcelでピボットテーブルを作成する手順です。

次のコードサンプルは、Excelでピボットテーブルを追加する方法を示しています。

// Workbookオブジェクトをインスタンス化します
Workbook workbook = new Workbook("worksheet.xlsx");

// シートにアクセスする
Worksheet sheet2 = workbook.getWorksheets().get(1);

// シートでピボットテーブルコレクションを取得する
PivotTableCollection pivotTables = sheet2.getPivotTables();

// ワークシートにピボットテーブルを追加します
int index = pivotTables.add("=Data!A1:F30", "B3", "PivotTable1");

// 新しく追加されたピボットテーブルのインスタンスにアクセスします
PivotTable pivotTable = pivotTables.get(index);

// 総計を表示する
pivotTable.setRowGrand(true);
pivotTable.setColumnGrand(true);

// ピボットテーブルレポートが自動的にフォーマットされるように設定する
pivotTable.setAutoFormat(true);

// ピボットテーブルの自動フォーマットタイプを設定します。
pivotTable.setAutoFormatType(PivotTableAutoFormatType.REPORT_6);

// 最初のフィールドを行領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);

// 3番目のフィールドを行領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.ROW, 2);

// 2番目のフィールドを行領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.ROW, 1);

// 4番目のフィールドを列領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 3);

// 5番目のフィールドをデータ領域にドラッグします。
pivotTable.addFieldToArea(PivotFieldType.DATA, 5);

// 最初のデータフィールドの数値形式を設定します
pivotTable.getDataFields().get(0).setNumber(7);

// Excelファイルを保存します
workbook.save("pivotTable.xls");

Excelデータ

エクセルピボットテーブルのデータソース

ピボットテーブル

JavaでExcelでピボットテーブルを作成する

JavaでExcelピボットテーブルを使用してグラフを生成する

以下は、JavaでExcelピボットテーブルを使用してグラフを生成する手順です。

  • Workbookクラスを使用して、新しいExcelファイルを作成するか既存のExcelファイルをロードします。
  • ワークシートに入力します(オプション)。
  • Workbook.getWorksheets().add(SheetType.CHART)を使用してグラフタイプの新しいワークシートを追加し、Worksheetオブジェクトでその参照を取得します。
  • Worksheet.getCharts().add()メソッドを使用して新しいグラフを追加し、Chartオブジェクトでその参照を取得します。
  • Chart.setPivotSource(string)メソッドを使用して、ピボットテーブルをグラフのデータソースとして設定します。
  • Workbook.save(string)メソッドを使用してブックを保存します。

次のコードサンプルは、Excelピボットテーブルを使用してグラフを生成する方法を示しています。

 // Workbookオブジェクトをインスタンス化します
 Workbook workbook = new Workbook("pivotTable.xls");
 
 // 新しいシートを追加する
 int sheetIndex = workbook.getWorksheets().add(SheetType.CHART);
 Worksheet sheet3 = workbook.getWorksheets().get(sheetIndex);
 
 // シートに名前を付ける
 sheet3.setName("PivotChart");
 
 // 縦棒グラフを追加する
 int chartIndex = sheet3.getCharts().add(ChartType.COLUMN, 0, 5, 28, 16);
 Chart chart = sheet3.getCharts().get(chartIndex);
 
 // ピボットグラフのデータソースを設定する
 chart.setPivotSource("PivotTable!PivotTable1");
 chart.setHidePivotFieldButtons(false);
 
 // Excelファイルを保存します
 workbook.save("pivotChart_test.xls");

無料のAPIライセンスを取得する

無料の一時ライセンスを取得して、評価の制限なしにAPIを使用できます。

結論

この記事では、Javaを使用してExcelでピボットテーブルを作成する方法を学習しました。さらに、Excelのピボットテーブルを使用してグラフを生成する方法を見てきました。 ドキュメントを使用して、JavaExcelAPIの詳細を調べることができます。ご不明な点がございましたら、フォーラムからお気軽にお問い合わせください。

関連項目