ExcelDAX-計算フィールド/メジャー

A calculated fieldデータモデルのテーブル内は、DAX式によって取得されるフィールドです。Power Pivotの以前のバージョンでは、計算フィールドはメジャーと呼ばれていました。Excel 2013では、計算フィールドに名前が変更されました。ただし、Excel 2016で測定するように名前が変更されています。ドキュメントを参照すると、これら2つの用語が混同されていることがわかります。計算フィールドとメジャーという用語は同義語であることに注意してください。このチュートリアルでは、計算フィールドという用語を使用します。

計算フィールドを理解する

計算フィールドは、ピボットテーブル(またはピボットグラフ)で使用するために特別に作成された数式です。

COUNTやSUMなどの標準の集計関数に基づいて、または独自のDAX数式を定義することにより、計算フィールドを作成できます。

以下は、計算フィールドと計算列の違いです-

  • 計算フィールドは、ピボットテーブルのVALUES領域でのみ使用できます。

  • 計算結果を含む計算列は、ROWS、COLUMNS、およびFILTERS領域でも使用できます。

計算フィールドの保存

計算されたフィールドは、そのソーステーブルとともにデータモデルに保存されます。これは、PowerPivotTableまたはPowerPivotChartFieldsリストにテーブルのフィールドとして表示されます。

計算フィールドの使用

計算フィールドを使用するには、[Power PivotTableFields]リストからフィールドを選択する必要があります。計算フィールドがVALUES領域に追加され、計算フィールドに使用される数式が評価されます。行フィールドと列フィールドの組み合わせごとに結果が作成されます。

計算フィールド–例

オリンピックデータの次のデータモデルを検討してください-

上のスクリーンショットに示されているように、結果テーブルには、スポーツ-イベント-国-日付の組み合わせを含む各行の値-ゴールド、シルバー、またはブロンズを含むフィールドメダルがあります。国ごとにメダル数が必要な場合は、次のDAX式を使用して計算フィールドのメダル数を作成できます。

Medal Count := COUNTA([Medal])

テーブルに計算フィールドを作成する

結果テーブルに計算フィールドメダルカウントを作成するには、次のようにします。

  • 結果テーブルのメダル列の下にある計算領域のセルをクリックします。セルが強調表示されます。

  • 数式バーにMedalCount:= COUNTA([Medal])と入力します。

Enterキーを押します。

上のスクリーンショットに見られるように、計算されたフィールドが選択されたセルに表示され、値が34,094として表示されます。この数は、結果テーブルの行の総数です。したがって、一見しただけではあまり意味がありません。前に説明したように、計算フィールドの実際の使用法は、PowerPivotTableまたはPowerPivotChartに追加することによってのみ確認できます。

パワーピボットテーブルでの計算フィールドの使用

計算フィールドを使用して各国のメダル数をカウントするには、次のようにします。

  • [パワーピボット]ウィンドウのリボンの[ピボットテーブル]をクリックします。
  • ドロップダウンリストでピボットテーブルをクリックします。

[ピボットテーブルの作成]ダイアログボックスが表示されます。

  • 既存のワークシートをクリックします。
  • ピボットテーブルを配置する場所を選択します。

空のピボットテーブルが作成されます。

  • [ピボットテーブルフィールド]リストの[結果]テーブルをクリックします。
  • [国]と[メダル数]のフィールドをクリックします。

ご覧のとおり、メダル数はVALUES領域に追加され、国はROWS領域に追加されます。ピボットテーブルは、フィールドCountryvaluesが行に表示された状態で作成されます。また、各行について、メダル数の値が計算されて表示されます。このようにして、計算フィールドは使用されたDAX数式を評価し、値を表示します。

  • 結果テーブルからROWS領域にフィールドSportを追加します。

上のスクリーンショットでわかるように、メダル数は国ごとに計算されます-スポーツごとに、国自体の小計です。

これは、DAXがPower機能を補完する方法です。

計算フィールドの種類

計算フィールドには、暗黙的フィールドと明示的フィールドの2種類があります。

  • アン implicit calculated field Power PivotTableFieldsリストペインに作成されます。

  • アン explicit calculated field Power Pivotウィンドウのテーブル、またはExcelウィンドウのPowerPivotリボンから作成されます。

暗黙の計算フィールドの作成

暗黙的な計算フィールドは、[Power PivotTableFields]ペインの2つの方法で作成できます。

ピボットテーブルフィールドリストでの暗黙的な計算フィールドの作成

次のように、ピボットテーブルフィールドリストのメダルフィールドからメダルフィールドの数を作成できます。

  • フィールドメダルカウントの選択を解除します。
  • フィールドメダルを右クリックします。
  • ドロップダウンリストの[値に追加]をクリックします。

メダルの数が[値]領域に表示されます。メダルの数の列がピボットテーブルに追加されます。

VALUES領域に暗黙の計算フィールドを作成する

暗黙の計算フィールド([値]領域の[親行の%])を作成して、その国が獲得した各スポーツのメダル数を、その国が獲得したメダルの総数のパーセンテージとして表すことができます。

  • [値]領域の[メダル数]ボックスの下矢印をクリックします。
  • ドロップダウンリストの[値フィールドの設定]をクリックします。

[値フィールドの設定]ダイアログボックスが表示されます。

  • [カスタム名]ボックスに「%メダル」と入力します。
  • [値を名前を付けて表示]タブをクリックします。
  • [値を表示]の下のボックスをクリックします。
  • 親行の合計の%をクリックします。
  • [数値フォーマット]ボタンをクリックします。

[セルの書式設定]ダイアログボックスが表示されます。

  • [パーセンテージ]をクリックします。
  • 小数点以下0桁で入力してください。
  • [OK]をクリックします。
  • [値フィールドの設定]ダイアログボックスで[OK]をクリックします。
  • [小計を表示しない]を選択します。

別の暗黙の計算フィールド%メダルを作成しました。観察できるように、国ごとに、スポーツごとのメダルのパーセンテージが表示されます。

暗黙の計算フィールドの欠点

暗黙の計算フィールドは簡単に作成できます。実際、Excelのピボットテーブルやピボットグラフでも作成しています。ただし、次のような欠点があります。

  • They are volatile。つまり、計算フィールドに使用したフィールドの選択を解除すると、そのフィールドは削除されます。もう一度表示したい場合は、もう一度作成する必要があります。

  • Their scope is limitedそれらが作成されたピボットテーブルまたはピボットグラフに移動します。別のワークシートに別のピボットテーブルを作成する場合は、計算フィールドを再度作成する必要があります。

一方、明示的な計算フィールドはテーブルとともに保存され、そのテーブルを選択するたびに使用できるようになります。

明示的な計算フィールドの作成

明示的な計算フィールドは2つの方法で作成できます-

  • データモデルのテーブルの計算領域。これについては、「テーブルでの計算フィールドの作成」のセクションですでに学習しています。

  • ExcelテーブルのPowerPivotリボンから。次のセクションでは、明示的な計算フィールドを作成するこの方法を学習します。

PowerPivotリボンからの明示的な計算フィールドの作成

PowerPivotリボンから明示的な計算フィールドを作成するには、次のようにします。

  • ブックのリボンの[POWERPIVOT]タブをクリックします。
  • [計算]領域の[計算フィールド]をクリックします。
  • ドロップダウンリストで[新しい計算フィールド]をクリックします。

[計算フィールド]ダイアログボックスが表示されます。

  • 次のスクリーンショットに示すように、必要な情報を入力します。
  • [数式を確認]ボタンをクリックします。
  • 数式にエラーがない場合にのみ[OK]をクリックします。

ご覧のとおり、このダイアログボックスで計算フィールドのカテゴリと形式を定義できます。さらに、IntelliSense機能を使用して関数の使用法を理解し、オートコンプリート機能を使用して関数、テーブル、および列の名前を簡単に入力できます。IntelliSense機能の詳細については、「DAX式」の章を参照してください。

これは、明示的な計算フィールドを作成するための推奨される方法です。