ピボットテーブルのデータモデルで計算フィールド(メジャー)を作成する方法
ピボットテーブルのデータモデルで計算フィールドを作成したいとお考えの方に向けて、この記事では具体的な手順を詳しく解説します。計算フィールドの基本概念から、実際の作成・削除・数式確認の方法まで、実例を交えてわかりやすくご紹介します。
計算フィールドとは?
計算フィールド(Calculated Field)は、ピボットテーブルやピボットグラフに組み込める重要な機能で、「メジャー(Measure)」とも呼ばれます。計算フィールドはDAX数式を使用して作成されるフィールドです。ピボットテーブルの作成後に、元のデータセットにはない追加の指標(例:ボーナス額や利益率など)を計算したい場合に、この計算フィールドを活用することで、数式を自由に適用できます。
計算フィールドには主に2種類あります。
- 暗黙的な計算フィールド(Implicit Calculated Field):「ピボットテーブルのフィールド」ペインから作成します。
- 明示的な計算フィールド(Explicit Calculated Field):「ピボットテーブル分析」タブから作成します。
データモデルで計算フィールドを作成する4つの例
ここでは、ある会社の従業員の給与と勤務日数が記録された次のようなデータセットを使用します。以降の例では、従業員に支給されるボーナス額を求める計算フィールドを作成していきます。

なお、本記事はMicrosoft Excel 365を使用して作成しています。お使いのバージョンに合わせて操作を読み替えてください。
例1:暗黙的な計算フィールドを作成する
まず、データセットをピボットテーブルに変換し、給与の3%にあたるボーナス額を計算する計算フィールドを挿入します。

ステップ1:ピボットテーブルを作成する
まず、データモデルに計算フィールドを挿入するためのピボットテーブルを作成します。
- 「挿入」タブ →「ピボットテーブル」のドロップダウン →「テーブル/範囲から」を選択します。

すると、「テーブル/範囲からピボットテーブル」ダイアログボックスが表示されます。
- データセットを「テーブル/範囲」として選択し、「新しいワークシート」をクリックします。
- 「このデータをデータモデルに追加」にチェックを入れ、「OK」を押します。

その後、PivotTable1と「ピボットテーブルのフィールド」の2つの領域を持つ新しいシートに移動します。

- 「Employee」を「行」エリアへ、「Salary」を「値」エリアへドラッグします。
すると、左側に次のようなピボットテーブルが表示されます。

ステップ2:メジャーを追加して計算フィールドを入力する
次に、DAX数式を使用してメジャー(計算フィールド)を追加します。
- ピボットテーブルの名前(ここでは「Range」)を右クリックします。
- 「メジャーの追加」を選択します。

すると、「メジャー」ダイアログボックスがポップアップ表示されます。
- 「メジャー名」に「Bonus」(任意の名前)を入力します。
- 「数式」ボックスで等号(=)の後に数式を入力します。「s」と入力すると候補が表示されるので、「[Sum of Salary]」を選択します。

- 以下のように完全な数式を入力します。
=[Sum of Salary]*0.03
ここでは、ボーナスが個人の給与の3%であるため、「[Sum of Salary]」に0.03を掛けています。
- 「OK」を押します。

これで、計算フィールド「Bonus」がフィールドリストに表示されます。

- 「Bonus」フィールドを「値」エリアへドラッグします。
すると、計算された値を持つ新しい列「Bonus」が表示されます。

給与とボーナスに通貨記号を付けると、次のようになります。

例2:Power Pivotタブを使って暗黙的な計算フィールドを作成する
この例では、Power Pivotタブを利用し、DAX数式によって計算フィールド「Bonus」を作成します。

ステップ1:Power Pivotオプションを有効化する
Excelワークシートに「Power Pivot」タブが表示されていない場合は、以下の手順で有効化してください。
- 「ファイル」を開きます。

- 「オプション」を選択します。

すると、「Excelのオプション」ウィザードが表示されます。
- 「アドイン」タブに移動し、「管理」の横にあるドロップダウン矢印をクリックします。

- 「COM アドイン」を選択して「設定」をクリックします。

その後、「COM アドイン」ウィザードが開きます。
- 「Microsoft Power Pivot for Excel」にチェックを入れ、「OK」を押します。

これで、ワークブックに「Power Pivot」タブが表示されるようになります。

ステップ2:メジャーを追加して計算フィールドを入力する
- 例1のステップ1と同じ手順でシートを開きます。

- 「Employee」を「行」エリアへ、「Salary」を「値」エリアへドラッグします。
すると、左側に次のようなピボットテーブルが表示されます。

- ピボットテーブル内の任意のセルを選択した状態で、「Power Pivot」タブ →「メジャー」ドロップダウン →「新しいメジャー」を選択します。

すると、「メジャー」ダイアログボックスが表示されます。
- 「メジャー名」を「Bonus 1」に設定します。
- 「数式」ボックスに以下の数式を入力します。
=[Sum of Salary]*0.03

ここで書式を変更することも可能です。
- 「カテゴリ」として「通貨」を選択し、「小数点以下の桁数」を2に設定します。
- 最後に「OK」を押します。

その後、従業員のボーナス額を含む「Bonus 1」列が自動的にピボットテーブルに追加されます。

給与に通貨記号を付け、表に罫線を引くと、最終的には次の図のようになります。

例3:明示的な計算フィールドを作成する
ここでは、「計算フィールド」機能を直接使用して、従業員のボーナス額を求める明示的な計算フィールドを数式付きで作成します。

手順:
- 例1のステップ1と同じ手順でシートを開きます。

- 「Employee」を「行」エリアへ、「Salary」を「値」エリアへドラッグします。
すると、左側に次のようなピボットテーブルが表示されます。

- ピボットテーブル内の任意のセルを選択した状態で、「ピボットテーブル分析」タブ →「計算」グループ →「フィールド、アイテム、セット」ドロップダウン →「計算フィールド」を選択します。

その後、「計算フィールドの挿入」ダイアログボックスがポップアップ表示されます。
- 「名前」を「Bonus 2」に設定します。
- 「数式」ボックスで等号(=)の後に、目的のフィールドを挿入します。

- 「Salary」フィールドをクリックし、「フィールドの挿入」を押します。

すると、「Salary」が「数式」ボックスに表示されます。

- 以下のように数式を完成させます。
= Salary*0.03
- 「OK」を押します。

最後に、ボーナス値を含む新しい列がピボットテーブルに追加されます。

給与に通貨記号を付け、表に罫線を引くと、最終的には次の図のようになります。

例4:IF関数を使った複雑な計算フィールドを作成する
ここでは、条件付きでボーナス額を計算します。勤務日数が250日を超える従業員には給与の5%のボーナスを支給し、それ以外の従業員には給与の3%のボーナスを支給するものとします。この条件を適用するために、IF関数を使用します。

手順:
- 例1のステップ1と同じ手順でシートを開きます。

- 「Employee」を「行」エリアへ、「Working Days」と「Salary」を「値」エリアへドラッグします。
すると、左側に次のようなピボットテーブルが表示されます。

- ピボットテーブル内の任意のセルを選択した状態で、「ピボットテーブル分析」タブ →「計算」グループ →「フィールド、アイテム、セット」ドロップダウン →「計算フィールド」を選択します。

その後、「計算フィールドの挿入」ダイアログボックスがポップアップ表示されます。
- 「名前」を「Bonus 3」に設定します。
- 「数式」ボックスで等号(=)の後に、目的のフィールドを挿入します。

- まず、数式の開始として「IF(」と入力します。

- 「Working Days」フィールドをクリックし、「フィールドの挿入」を押します。

このようにして、必要なフィールドを数式に挿入していきます。
- 以下の数式を適用します。
=IF('Working Days' >250,Salary *0.05,Salary *0.03)
- 「OK」を押します。

最後に、計算されたボーナスを含む新しい列が表示されます。

給与・ボーナスに通貨記号を付け、表に罫線を引くと、最終的には次の図のようになります。

ピボットテーブルのデータモデルから計算フィールドを削除する方法
ここでは、次のピボットテーブルから計算フィールド「Sum of Bonus 3」を削除する手順をご紹介します。

手順:
- 計算フィールドによって作成された列上の任意のセルを選択し、右クリックします。

- 「“Sum of Bonus 3” の削除」を選択します。

これで、計算フィールドが削除されました。

計算フィールドの数式一覧を取得する方法
計算フィールドで使用されている数式の一覧を確認したい場合は、以下の手順に従ってください。

手順:
- ピボットテーブル内の任意のセルを選択した状態で、「ピボットテーブル分析」タブ →「計算」グループ →「フィールド、アイテム、セット」ドロップダウン →「数式の表示」を選択します。

すると、新しいシートに移動し、数式の詳細な一覧が表示されます。

まとめ
この記事では、ピボットテーブルのデータモデルで計算フィールドを作成する方法について、暗黙的・明示的な両方のアプローチを4つの具体例とともに解説しました。さらに、計算フィールドの削除方法や数式一覧の確認方法もご紹介しました。皆さんの業務効率化にお役立ていただければ幸いです。ご質問やご意見がありましたら、ぜひコメント欄でお聞かせください。
関連記事
- Excelでデータモデルを使う方法(3つの例)
- Excelでデータモデルを管理する方法(簡単な手順)
-
Excelのデータモデルからテーブルを削除する方法【2つの簡単な手順】
このチュートリアルでは、Excelのデータモデルからテーブルを削除するための2つの簡単な方法をご紹介します。どちらの方法も複雑な数式を使わずに実行できる、シンプルな操作です。また、記事の最後では、データモデルがまだない方向けに、データモデルへテーブルを追加する手順も解説します。 練習用ワークブックはこちらからダウンロードできます。 データモデルとは? Excelにおけるデータモデルとは、1つ以上の共通データ列(キー)を介して相互に関連付けられたデータテーブルのコレクションです。このテーブル群が集まることで、異なるワークシート上にある個々のテーブルにアクセスできる、より大規模なデータベースが形成
-
Excelでデータモデルを作成する3つの方法|リレーションシップ・Power Query・Power Pivot
データモデルは、Excelでのデータ分析に欠かせない機能です。データモデルを活用すると、テーブルなどのデータをExcelのメモリ上に読み込み、共通の列を基準に複数のデータ同士を関連付けることができます。各テーブル間のつながり(関係性)こそが、「データモデル」という言葉が示す「モデル」の正体です。Excelにはデータモデルを作成するための方法が複数用意されており、本記事では3つの異なるアプローチをわかりやすく解説します。 Excelでデータモデルを作成する3つの便利な方法 本記事では、Excelでデータモデルを作成する3つの実用的な手法をご紹介します。まず「リレーションシップ」ダイアログを使う