スキップしてメイン コンテンツへ

PowerPivot の計算列

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。私たちの目的は、このコンテンツがお客様の役に立つようにすることです。お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。簡単に参照できるように、こちらに英語の記事があります。

集計列を使うと、 PowerPivotデータモデルのテーブルに新しいデータを追加することができます。列に値を貼り付けるかインポートするのではなく、列の値を定義するデータ分析式 (DAX)を作成します。

たとえば、 factSalesテーブルの各行に売上利益値を追加する必要がある場合。新しい集計列を追加して、数式= [SalesAmount]-[総] – [ReturnAmount]を使用することによって、新しい値は ReturnAmount の各行の値から総と SalesAmount 列の各行から値を減算することによって計算されます。列.[利益] 列は、ピボットテーブル、ピボットグラフ、または Power View レポートで使用できます。その他の列と同様です。

この図は、 PowerPivotの集計列を示しています。

計算列

注: 計算列とメジャーは、それぞれが数式に依存しているため、類似していますが、それらは異なります。メジャーは、ピボットテーブルまたはピボットグラフの [] 領域で最もよく使用されます。集計列を使用して、ピボットテーブルの別の領域 (ピボットテーブルの列や行、ピボットグラフの軸など) に計算結果を配置します。メジャーの詳細については、「 Power Pivot のメジャー」を参照してください。

計算列について

集計列の数式は、Excel で作成した数式とよく似ています。ただし、テーブル内の行ごとに異なる数式を作成することはできません。代わりに、DAX 数式は列全体に自動的に適用されます。

列に数式が含まれている場合は、各行について値が計算されます。数式を入力するとすぐに、その列に対する結果が計算されます。基になるデータが更新された場合など、列の値は必要に応じて再計算されます。

計算列は、メジャーやその他の計算列に基づいて作成できます。たとえば、1つの計算列を作成して文字列から数値を抽出し、その数値を別の集計列で使用することができます。

既存のテーブルに追加したデータを使用して、集計列をサポートすることができます。たとえば、値を連結したり、加算を実行したり、サブストリングを抽出したり、他のフィールドの値を比較したりすることができます。集計列を追加するには、 PowerPivotに少なくとも1つのテーブルが既に含まれている必要があります。

次の数式を確認します。

=EOMONTH([StartDate],0])

Contoso サンプル データを使用すると、この数式は Promotion テーブルの StartDate 列から月を抽出します。そして、Promotion テーブルの各行について月の最終日を計算します。2 番目のパラメーターは、StartDate の月より前または後の月数を指定します。この場合、0 は同じ月であることを表します。たとえば、StartDate 列の値が 6/1/2001 の場合、計算列の値は 6/30/2001 になります。

Contoso サンプル データの詳細については、「DAX およびデータ モデル チュートリアルのサンプル データの入手」を参照してください。

計算列の名前付け

既定では、新しい集計列は他の列の右側に追加され、列にはCalculatedColumn1CalculatedColumn2などの既定の名前が自動的に割り当てられます。列を作成した後、必要に応じて列の並べ替えや名前変更を行うことができます。

集計列の変更には、いくつかの制限があります。

  • それぞれの列名は、1 つのテーブル内で一意である必要があります。

  • 同じブック内のメジャーに既に使われている名前は避けます。メジャーと計算列は同じ名前にすることはできますが、名前が一意でない場合は、計算エラーを簡単に取得できます。誤ってメジャーを呼び出しないようにするには、列を参照するときに必ず完全修飾列参照を使用します。

  • 集計列の名前を変更する場合は、既存の列に依存する数式も更新する必要があります。手動更新モードになっていない場合は、数式の結果を更新すると自動的に実行されます。ただし、この操作には時間がかかることがあります。

  • 列の名前内、またはPowerPivot内の他のオブジェクトの名前には使用できない文字がいくつかあります。詳細については、「 powerpivot の DAX 構文の仕様」の「命名要件」を参照してください。

既存の集計列の名前を変更したり、編集したりするには:

  1. [PowerPivot] ウィンドウで、名前を変更する計算列の見出しを右クリックして、[列名の変更] をクリックします。

  2. 新しい名前を入力し、Enter キーを押して新しい名前を受け入れます。

データ型の変更

他の列のデータ型を変更するのと同じ方法で、集計列のデータ型を変更できます。次のデータ型の変更を行うことはできません。テキストから10進数、テキストから整数、テキストから通貨、テキストから日付までテキストからブール型に変更を加えることができます。

計算列のパフォーマンス

計算列で使用される数式は、メジャーで使用される数式よりリソースを大量に消費する可能性があります。その理由の 1 つとして、計算列の結果が常にテーブルのすべての行を対象に計算されるのに対し、メジャーはピボットテーブルまたはピボットグラフに使用されているセルのみを対象として計算されることが挙げられます。

たとえば、100万行のテーブルには、常に百万の結果を含む集計列があり、パフォーマンスにはそれに対応する効果があります。ただし、ピボットテーブルでは、通常、行と列の見出しを適用してデータをフィルター処理します。つまり、メジャーは、ピボットテーブルの各セルのデータのサブセットに対してのみ計算されます。

数式には、他の列や値を評価する式など、数式内のオブジェクト参照に対する依存関係があります。たとえば、別の列を基にした集計列、または列参照を使用して式を含む計算は、他の列が評価されるまで評価できません。既定では、自動更新が有効になっています。そのため、数式の依存関係がパフォーマンスに影響する可能性があることに注意してください。

計算列を作成するときにパフォーマンス上の問題を回避するには、次のガイドラインに従ってください。

  • 複数の複雑な依存関係を含む1つの数式を作成するのではなく、ステップで数式を作成し、結果を列に保存して、結果を検証してパフォーマンスの変化を評価できるようにします。

  • データの変更は、多くの場合、計算列に更新を誘導します。再計算モードを手動に設定することで、これを防ぐことができます。ただし、集計列の値に誤りがある場合は、データを更新して再計算するまで、列は無効になります。

  • テーブル間のリレーションシップを変更または削除すると、そのテーブル内の列を使用する数式が無効になります。

  • 循環依存や自己参照依存を含む数式を作成した場合、エラーが発生します。

タスク

集計列の操作の詳細については、「集計列を作成する」を参照してください。

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×