LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

変数の使用は、測定の終了時に結果が正しく合計されることを確認するための優れた方法です。変数は、LuckyTemplates 内で数式を作成して解く上で非常に重要な部分です。その理由を説明します。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

目次

ガント チャートで視覚化されたサンプル データ

DAX メジャーで変数を使用することの重要性を示すために、このかなり複雑な数式を例として使用します。私はこれを、プロジェクト管理に関する LuckyTemplates の最近のメンバー限定イベントに使用しました。

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

データを視覚化するために、この独自のガント チャートを作成しました。多くのロジックが埋め込まれていることがわかります。これにより、プロジェクトの開始日、終了日などの情報を示すデータを色分けすることができます。

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

このグラフの背後にあるデータを簡単に確認してみましょう。

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

特定のプロジェクトのすべてのタスクの開始日と終了日が表示されていることがわかります。数式がさらに複雑になっているのは、%Completion の列もあるという事実です。

その完了率をグラフで視覚化するにはどうすればよいですか? これは、カテゴリごとのさまざまなライブ タスクに基づいて項目化された現在のライブ タスクを表示することで示されます。

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

また、プロジェクトごとに異なるタスク カテゴリに対してチャート上でさまざまな色を使用する必要があったため、最終的にはマトリックス内で条件付き書式を使用してすべてを実現することにしました。 

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

さて、LuckyTemplates サポート フォーラムを閲覧すると、このようなデータを扱う際にユーザーが非常に複雑な数式を適用しているのをよく見かけます。実のところ、それらの多くは変数に分割する必要があります。

複雑な数式での変数の使用

何を計算しようとしているかに関係なく、変数をあまり使用しない場合に目指すべき設定を示したいと思います。なぜここで変数を使用する必要があるのか​​、そして実際にこれを機能させるために私が変数をどのように使用したかを見てもらいたいと思います。

実際には変数内で変数を参照することができます。これは、RETURN に何かを入力する前に、多くの計算を構築できることを意味します。 

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

すべての結果は LuckyTemplates で個別に計算されることに留意することが重要です。したがって、個々の結果のコンテキストも考慮する必要があります。

したがって、CurrentDay、ProjectDays、DaysFromStartDate に VAR を使用していることがわかります。また、DaysFromStartDate と ProjectDays を参照して、DaysFromEndDate も取得しました。

その後、ProgressColor と CompletionPercent についてさらにロジック作業を行いました。

変数に関するもう 1 つの興味深い点は、TRUE または FALSE ロジックを埋め込むこともできることです。通常、メインの式のここに IF ステートメントの長いリストが表示されます。ただし、今回は、ToCompletionLogic と MAX Days 以上 MAX Days 以下などを使用して、TRUE または FALSE ロジックを VAR 内に配置することにしました。

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

ここでは、IF ステートメントを SWITCH 式に入力していることもわかります。これは、より効率的なアプローチです。

このリストにあるすべてのステートメントを参照するのではなく、ロジックを変数に 1 回書き込むだけで済むため、IF ステートメントが理解しやすくなりました。

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

変数の使用と分岐の測定

以前にも何度も言及したことを知っているのに、なぜこの場合にメジャー分岐を使用しなかったのか疑問に思われるかもしれません。

それは、ここで使用されているロジックの多くは、純粋にこの特定の計算のためだけに使用されているためです。モデルの残りの部分では再利用できません。

したがって、この特定のケースでは、メジャー グループ内で多くのスペースを占めるよりも、実際に使用する 1 つの数式内の変数として配置する方が良いでしょう。 

これはこの計算のみにローカルであるため、これらすべてを変数内に配置し、すべてを実行する単一の式を作成することにしました。 

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由

この式を最初から構築したわけではないことに注意することが重要です。もともとこれらすべてを異なるメジャーに分けていました。これは、異なるコンテキストごとに正しい結果が計算されていることを確認するためです。そこから、この 1 つの特定の対策を構築することで、すべてをクリーンアップしました。

したがって、構文に関して言えば、先頭に変数があり、その下にロジックを入力するための RETURN 関数があります。 

LuckyTemplates 変数を使用することが DAX メジャーを記述するより良い方法である理由


LuckyTemplates での変数の使用 – 詳細なサンプル
シナリオ分析テクニック 複数の「What If」パラメーターを使用する
LuckyTemplates の「What If」パラメーターの使用開始

結論

私が使用したアプリケーションをご覧になったので、このような場合に変数を使用することを好む理由が理解できたと思います。

ここで強調したいことの 1 つは、私が作成したような複雑な式を作成する前に、個々の変数を理解することが重要であるということです。

これはサポートフォーラムでもよく見かけます。彼らはすぐに長い測定に入り、なぜ結果が正しく表示されないのか疑問に思います。個々の結果がどのように計算されるかを本当に理解する必要があります。すべてを 1 つの最終メジャーに配置すると、個々の結果を監査する方法はありません。

その仕組みを十分に理解したら、最終的にはさらに問題が発生することなく、変数を使用してより高度な数式を作成できるようになります。

ではごきげんよう


Power Automate の文字列関数: Substring と IndexOf

Power Automate の文字列関数: Substring と IndexOf

Microsoft フローで使用できる 2 つの複雑な Power Automate String 関数、substring 関数とindexOf 関数を簡単に学習します。

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates でビジュアル ツールチップを作成する

LuckyTemplates ツールチップを使用すると、より多くの情報を 1 つのレポート ページに圧縮できます。効果的な視覚化の手法を学ぶことができます。

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を行う

Power Automate で HTTP 要求を作成し、データを受信する方法を学んでいます。

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で日付テーブルを作成する方法

LuckyTemplates で簡単に日付テーブルを作成する方法について学びましょう。データの分析と視覚化のための効果的なツールとして活用できます。

2 つの方法による SharePoint 列の検証

2 つの方法による SharePoint 列の検証

SharePoint 列の検証の数式を使用して、ユーザーからの入力を制限および検証する方法を学びます。

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel または CSV ファイルにエクスポート

SharePoint リストを Excel ファイルおよび CSV ファイルにエクスポートする方法を学び、さまざまな状況に最適なエクスポート方法を決定できるようにします。

Power Automate のオンプレミス データ ゲートウェイ

Power Automate のオンプレミス データ ゲートウェイ

ユーザーがコンピューターから離れているときに、オンプレミス データ ゲートウェイを使用して Power Automate がデスクトップ アプリケーションにアクセスできるようにする方法を説明します。

DAX 数式での LASTNONBLANK の使用

DAX 数式での LASTNONBLANK の使用

DAX 数式で LASTNONBLANK 関数を使用して、データ分析の深い洞察を得る方法を学びます。

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

CROSSJOIN 関数の使用方法 – LuckyTemplates および DAX チュートリアル

LuckyTemplates で予算分析とレポートを実行しながら、CROSSJOIN 関数を使用して 2 つのデータ テーブルをバインドする方法を学びます。

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

TREATAS 関数を使用して LuckyTemplates で仮想リレーションシップを作成する

このチュートリアルでは、LuckyTemplates TREATAS を使用して数式内に仮想リレーションシップを作成する方法を説明します。