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

Power Pivot における DAX シナリオ

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

ここでは、次のシナリオで DAX 数式の使用を示す例へのリンクを示します。

  • 複雑な計算を実行します。

  • テキストと日付の操作

  • 条件値とエラーのテスト

  • タイム インテリジェンスの使用

  • 順位付けと値を比較します。

この記事の内容

作業の開始

サンプル データ

その他のリソース

シナリオ: 複雑な計算を実行します。

ピボット テーブルにカスタム計算を作成します。

式にフィルターを適用します。

動的な比率を作成する選択的にフィルターを削除します。

外部ループから値を使用します。

シナリオ: テキストと日付の操作

連結によってキー列を作成します。

テキストの日付から抽出した日付要素を基に日付を構成します。

ユーザー設定の日付または数値書式を定義します。

数式を使用してデータ型を変更します。

シナリオ: 条件値とエラーのテスト

条件に基づいて値を作成します。

数式内のエラーをテストします。

シナリオ: タイム インテリジェンスの使用

累計売上を計算します。

時間の経過値を比較します。

カスタムの日付範囲で値を計算します。

シナリオ: の順位付けと値を比較します。

ピボット テーブルで上位 10 個のアイテムだけを表示します。

アイテムの順序を動的に数式を使って

作業の開始

サンプル データ

DAX の数式を初めての場合は、 PowerPivotのサンプル データの例を参照して開始することがあります。 詳細については、「 DAX およびデータ モデル チュートリアルのサンプル データを取得する」を参照してください。

その他のリソース

DAX リソース センター Wikiのさまざまなブログ、サンプル、ホワイト ペーパー、先頭の専門家と Microsoft から提供されたビデオを含む DAX についての情報を入手できる場所にアクセスすることもできます。

シナリオ: 複雑な計算を実行します。

DAX の数式では、ユーザー設定の集計、フィルター、および条件値の使用に関連する複雑な計算を実行できます。 ここでは、カスタム計算を開始する方法の例を示します。

ピボット テーブルにカスタム計算を作成します。

CALCULATE、CALCULATETABLE は、優れた、柔軟性のある関数の計算フィールドを定義する便利です。 これらの関数を使用して、計算の実行をコンテキストを変更できます。 集計を実行する算術演算の種類をカスタマイズすることもできます。 例については、次のトピックを参照してください。

式にフィルターを適用します。

DAX 関数に引数として使用するテーブルが行われる場所、さまざまな場所では、通常渡すできますフィルターが適用された表の代わりに、関数を使って、フィルター、テーブル名ではなく、または関数の引数の 1 つとしてフィルター式を指定しています。 次のトピックでは、フィルターを作成する方法、およびフィルターが数式の結果に与える影響の例を紹介します。 詳細については、 DAX の数式でのデータのフィルター処理を参照してください。

FILTER 関数を使用して、その他の関数は空白の値の除外専用に設計されています、式を使用して、フィルター条件を指定できます。

動的な比率を作成する選択的にフィルターを削除します。

数式に動的フィルターを作成して、次のような質問を簡単に答えることができます。

  • 年の売上合計」に現在の製品の売上の寄与度とは何でしたか。

  • どのようにこの部門が占める割合は総利益に全営業年度の他の部門と比較してよいですか。

ピボット テーブルで使用する数式は、ピボット テーブルのコンテキストの影響を受けることができますが、選択的を追加または削除フィルター コンテキストを変更することができます。 すべてのトピックの例では、これを行う方法を示します。 特定の販売店の売り上げ高の比率を検索すべて再販業者販売の上にするには、すべてのコンテキストの値で除算の現在のコンテキストの値を計算メジャーを作成します。

ALLEXCEPT トピックでは、選択して、数式に基づくフィルターをクリアする方法の例を示します。 2 つの例では、ピボット テーブルのデザインによって結果がどのように変化するかを説明します。

比率とパーセンテージを計算する方法の他の例では、次のトピックを参照してください。

外部ループから値を使用します。

計算での現在のコンテキストの値を使用して、他 DAX は、関連する計算のセットを作成する前ループからの値を使用できます。 次のトピックでは、外部ループからの値を参照する数式を作成する方法のデモを提供します。 EARLIER 関数には、入れ子になったループを 2 つのレベルがサポートしています。

行のコンテキストと関連テーブル、および数式内でこの概念を使用する方法の詳細については、 DAX の数式のコンテキストを参照してください。

シナリオ: テキストと日付の操作

ここでは、テキストを抽出して、日付と時刻の値を作成または条件に基づいて値を作成の使用に関連する一般的なシナリオの例が記載された DAX トピックへのリンクを示します。

連結によってキー列を作成します。

PowerPivotには、複合キーはできません。このため、データ ソースの複合キーがある場合は、キー列を 1 つに結合する必要があります。 次のトピックでは、複合キーに基づく集計列を作成する方法の 1 つの例を示します。

テキストの日付から抽出した日付要素を基に日付を構成します。

PowerPivot関数を使用して、SQL Server の日付/時刻データ型の日付を操作するにはこのため、データは整数の代理キー--を使用している場合、日付が、 PowerPivotデータ エンジンによって認識されない地域の日付の形式で記述されている場合、外部データに異なる書式: たとえば、日付が含まれる場合またはする必要がありますを使用日付の要素を抽出し、有効な日付/時刻形式のパーツを作成する DAX 式。

整数として表示され、文字列としてインポートする日付の列があれば、たとえば、次の数式を使用して文字列を日付/時刻値に変換できます。

=DATE(RIGHT([Value1],4),LEFT([Value1],2),MID([Value1],2))

値 1

結果

01032009

2009 年 3/1/

12132008

2008 年 12 月 13 日

06252007

2007 年 6 月 25 日

次のトピックは、抽出し、日付の作成に使用する関数の詳細について説明します。

ユーザー設定の日付または数値書式を定義します。

データで日付または数値には、標準の Windows テキスト形式のいずれかに表示されませんが含まれている場合は、値が正しく処理されることを確認するユーザー定義の形式を定義できます。 次の形式は、文字列、または文字列から値を変換するときに使用されます。 次のトピックでは、日付、数字を操作するために使用できるあらかじめ定義された形式の詳細な一覧も提供します。

数式を使用してデータ型を変更します。

PowerPivotでは、出力のデータ型は、元の列によって決まり、最適なデータ型がPowerPivotで定義されているため、結果のデータ型を明示的に指定することはできません。 ただし、出力データの種類を操作するのにPowerPivotで暗黙的なデータ型変換を使用することができます。 型変換の詳細については、「 DAX およびデータ モデル チュートリアルのサンプル データを取得する」を参照してください。

  • 日付または数値に文字列を数値に変換するには、1.0 で乗算します。 たとえば、次の数式では、3 日間、マイナスの現在の日付を計算し、[対応する整数値を出力します。

    = (TODAY()-3) * 1.0

  • 日付、数値、または通貨の値を文字列に変換するには、値を空の文字列を連結します。 たとえば、次の数式では、今日の日付を文字列としてが返されます。

    =""& TODAY()

次の関数を使用して特定のデータ型が返されるようにすることができます。

実数を整数に変換します。

シナリオ: 条件値とエラーのテスト

DAX では、excel を使用すると、データの値をテストし、別の条件に基づいて値を返します関数があります。 たとえば、年の年間の売り上げ高によってリセラー優先またはのいずれかのラベルを付ける計算列を作成できませんでした。 値をテストする関数も範囲またはデータが予期しないエラーが計算の分割されないようにするための値の種類を確認するのに便利です。

条件に基づいて値を作成します。

入れ子になった IF 条件を使用する値をテストし、条件付きで新しい値を生成します。 次のトピックでは、条件付きの処理および条件値の簡単な例をいくつか含まれています。

数式内のエラーをテストします。

Excel では、計算列の 1 行の有効な値と別の行に無効な値を持つことはできません。 つまり、 PowerPivot列の任意の部分にエラーがある場合列全体がでフラグ設定、エラーを常に無効な値の結果となる数式のエラーを修正する必要があります。

たとえば、ゼロで除算する数式を作成する場合は、無限大の範囲の結果、またはエラーをというがあります。 いくつかの数式は、関数では、数値が想定されるときに空白の値が発生した場合にもされません。 データ モデルを開発しているときに、エラーが表示され、メッセージをクリックし、問題をトラブルシューティングすることを許可することをお勧めします。 ただし、ブックを発行すると、予期しない値が計算が失敗する原因になっていることを防止するエラー処理を組み込む必要があります。

計算列のエラーを返すことを避けるためとを使って論理の組み合わせを情報関数のエラーをテストして、常に有効な値を返します。 次のトピックでは、DAX で次の操作方法の簡単な例をいくつかを説明します。

シナリオ: タイム インテリジェンスの使用

DAX のタイム インテリジェンス関数には、データから日付または日付の範囲を取得するための機能が含まれます。 複数のと同じ期間の値を計算するのにこれらの日付または日付の範囲を使用できます。 タイム インテリジェンス関数では、月、年、または四半期の値を比較するための標準の日付の間隔を使用する機能も含まれます。 指定した期間の最初と最後の日付の値を比較する数式を作成することもできます。

すべてのタイム インテリジェンス関数のリストは、タイム インテリジェンス関数 (DAX)を参照してください。 ヒントPowerPivot分析で日付と時刻を効果的に使用する方法については、 Power Pivot の日付を参照してください。

累計売上を計算します。

次のトピックには、閉じると、開始残高を計算する方法の例が含まれています。 例では、日、月、四半期、年などのさまざまな期間にわたって実行中の残高を作成できます。

時間の経過値を比較します。

次のトピックには、さまざまな期間の合計を比較する方法の例が含まれています。 既定の時間 DAX でサポートされている期間は、月、四半期、および年数です。

カスタムの日付範囲で値を計算します。

セールス プロモーションの開始後 15 日間など、カスタムの日付の範囲を取得する方法の例については、次のトピックを参照してください。

ユーザー設定の日付のセットを取得するタイム インテリジェンス関数を使用している場合は、期間全体でユーザー設定の集計を作成するのには、計算を実行する関数を入力としての日付のセットを使用できます。 これを行う方法の例については、次のトピックを参照してください。

  • PARALLELPERIOD 関数

    注: 数年、ことをお勧めして計算を実行するまたはするカスタムの日付の範囲を指定する必要はありませんが、月、四半期などの標準の会計単位を操作している場合はタイム インテリジェンス関数を使用して、TOTALQTD など、この目的に対応したデザインTOTALMTD、TOTALQTD などです。

シナリオ: の順位付けと値を比較します。

列またはピボット テーブルで上位 n 個のアイテムのみを表示するには、複数の選択肢があります。

  • 上位のフィルターを作成するのには、Excel 2010 での機能を使用できます。 ピボット テーブルの上位または下位の値の数値を選択することもできます。 このセクションの最初の部分では、ピボット テーブルの上位 10 個のアイテムをフィルター処理する方法について説明します。 詳細については、Excel のドキュメントを参照してください。

  • ランク付けする値、動的に変更する数式を作成し、順位値をフィルター処理し、またはスライサーとして順位値を使用できます。 このセクションの 2 番目の部分では、次の数式を作成し、スライサーでそのランク付けを使用する方法について説明します。

どちらの方法に長所と短所があります。

  • Excel の先頭へのフィルターが使いやすくには、フィルターは表示のためにのみ、します。 ピボット テーブルの元データを変更する場合は、変更を表示するピボット テーブルを手動で更新する必要があります。 動的に使用するランク付けする必要がある場合は、列内の他の値に値を比較する数式を作成するのには DAX を使用することができます。

  • DAX 数式より強力です。さらに、スライサーを順位値を追加してできますをクリックするだけ表示されているトップ値の数を変更するのには、スライサーします。 ただし、計算は負荷が、この方法を次の数の行をテーブルに適していない可能性があります。

ピボット テーブルで上位 10 個のアイテムだけを表示します。

ピボット テーブルで上位または下位の値を表示するには

  1. ピボット テーブルでは、[行ラベル] 見出しの下矢印をクリックします。

  2. 値フィルター_gtの 10 個を選択します。

  3. トップテン フィルター <column name> ] ダイアログ ボックスで、次のように、順位付けと値の数の列を選択します。

    1. 最大値を持つセルを表示する上部または下部に、最低値で囲まれたセルを表示する] を選びます。

    2. 表示したい上位または下位の値の数を入力します。 既定値は、10 です。

    3. 値の表示方法を選びます。

名前

説明

アイテム

値が上位または下位のアイテムのリストのみを表示するピボット テーブルをフィルター処理するのには、このオプションを選択します。

パーセンテージ

指定したパーセンテージに追加するアイテムのみを表示するピボット テーブルをフィルター処理するのには、このオプションを選択します。

SUM

上位または下位のアイテムの値の合計を表示するには、このオプションを選択します。

  1. 順位付け値を含む列を選択します。

  2. [OK] をクリックします。

アイテムの順序を動的に数式を使って

次のトピックでは、DAX を使用して集計列に格納されているランク付けを作成する方法の例を示します。 DAX の数式の計算に動的にため常に、集計元データが変更された場合でも、ランク付けが正しいことを確認できることができます。 また、集計列に数式を使用するためスライサーでランク付けを使用し、上位 5、10、または偶数の先頭への上位 100 の値を選択できます。

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

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

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

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

×