ピボットテーブルに計算フィールドを追加する

可能な使用シナリオ

既知のデータに基づいてピボットテーブルを作成すると、それに含まれるデータが望んでいるものではないことがあります。望んでいるデータは、これらの元のデータの組み合わせです。たとえば、データを望んだ形式にするために、元のデータを加算、減算、乗算、除算する必要があります。その場合、計算フィールドを構築し、計算用の対応する式を設定する必要があります。その後、計算フィールドで統計などの操作を行います。

Excelでピボットテーブルに計算フィールドを追加する方法

Excelのピボットテーブルに計算フィールドを挿入するには、以下の手順に従います:

  1. 追加したいピボットテーブルを選択します。
  2. リボットテーブルツールの「分析」タブに移動します。
  3. 「フィールド、アイテム、およびセット」をクリックし、その後、ドロップダウンメニューから「計算フィールド」を選択します。
  4. 「名前」フィールドに、計算フィールドの名前を入力します。
  5. 「式」フィールドに、適切なピボットテーブルのフィールド名と数学演算子を使用して実行する計算の式を入力します。
  6. 「OK」をクリックして計算フィールドを作成します。
  7. 新しい計算フィールドは、値のセクションの下にあるピボットテーブルフィールドリストに表示されます。
  8. 計算フィールドをピボットテーブルの値セクションにドラッグして、計算された値を表示します。

Aspose.Cells for Node.js via C++ライブラリを使ったピボットテーブルに計算フィールドを追加する方法

Aspose.Cells for Node.js via C++を使ってExcelファイルに計算フィールドを追加します。サンプルコードを参照してください。例の実行後、ピボットテーブルに計算フィールドが追加されます。

  1. 元のデータを設定し、ピボットテーブルを作成します。
  2. ピボットテーブル内の既存のPivotFieldに応じて計算フィールドを作成します。
  3. 計算フィールドをデータ領域に追加します。
  4. 最後に、output XLSX形式でブックを保存します。

サンプルコード

const AsposeCells = require("aspose.cells.node");
//Instantiating an Workbook object
var workbook = new AsposeCells.Workbook();
//Obtaining the reference of the newly added worksheet
var ws = workbook.getWorksheets().get(0);
var cells = ws.getCells();
//Setting the value to the cells
var cell = cells.get("A1");
cell.putValue("Fruit");
cell = cells.get("B1");
cell.putValue("Count");
cell = cells.get("C1");
cell.putValue("Price");
cell = cells.get("A2");
cell.putValue("Apple");
cell = cells.get("A3");
cell.putValue("Mango");
cell = cells.get("A4");
cell.putValue("Blackberry");
cell = cells.get("A5");
cell.putValue("Cherry");
cell = cells.get("B2");
cell.putValue(5);
cell = cells.get("B3");
cell.putValue(3);
cell = cells.get("B4");
cell.putValue(6);
cell = cells.get("B5");
cell.putValue(4);
cell = cells.get("C2");
cell.putValue(5);
cell = cells.get("C3");
cell.putValue(20);
cell = cells.get("C4");
cell.putValue(30);
cell = cells.get("C5");
cell.putValue(60);
//Adding a PivotTable to the worksheet
var i = ws.getPivotTables().add("=A1:C5", "D10", "PivotTable1");
//Accessing the instance of the newly added PivotTable
var pivotTable = ws.getPivotTables().get(i);
pivotTable.addFieldToArea(AsposeCells.PivotFieldType.Row, 0);
//Adding a calculated field to PivotTable and drag it to data area.
pivotTable.addCalculatedField("total", "=Count*Price", true);
pivotTable.refreshData();
pivotTable.calculateData();
workbook.save("out.xlsx");