LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

関数について詳しく説明します。

この機能についてはすでに何度も使用していますが、ここで詳しく説明したいと思います。

目次

CALCULATE で昨年の売上を取得する

CALCULATE関数を使用すると、計算が実行される環境から取得されるメジャー内の計算のコンテキストを変更できます。このチュートリアルの完全なビデオは、このブログの下部でご覧いただけます。

DAX では、メジャー内のコンテキストを変更できる機能が非常に重要です。

まず例として、 CALCULATE関数を使用して現在の日付の売上を昨年の同じ日付の売上と比較するSales LYというメジャーを作成します。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

CALCULATEの最初のパラメータには任意の種類の式を使用できるため、CALCULATE 関数内に合計売上を入力します。

というタイム インテリジェンス関数を使用します。タイム インテリジェンス関数は、時間関連の計算に使用される関数です。

CALCULATE内にSAMEPERIODLASTYEAR を入れているため、 Date 列を通じて現在のコンテキストを 1 年ずつ調整します。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

新しいメジャーをドラッグすると、 Total Sales 列Sales LY列の結果が異なることがわかります。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

この背後にある理由は、 Sales LY内の値がちょうど 1 年前の Total Salesから取得されているためです。

例を示すために、日付28/02/2020のSales LY値を見てみましょう。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

この値は$10,440なので、 2019 年 2 月 28 日Total Salesを振り返ると、まったく同じ結果が得られるはずです。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

2020 年 2 月 28 日を現在の日付として認識しますが、 Sales LY列を通じてコン​​テキストを2019 年の同じ日付に変更します。

これが、CALCULATE がLuckyTemplates で非常に重要な機能である理由です。これにより、 Total SalesSales LY差を求める必要がある場合など、さまざまな方法で計算を実行できます。

四半期ごとにコンテキストを変更する

また、日付列のコンテキストを変更して、毎日の値ではなく四半期の値を確認できるようにすることもできます。

まず、 Dates テーブル内にあるQuarterInCalendar列をドラッグします。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

ここで最初に気づくのは、日付が正しくソートされていないことです。これを修正するには、 QuarterIn Yearという列を並べ替えます。

「データ」領域に移動し、「QuarterInCalendar」列を強調表示します。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

次に、[列で並べ替え] の下の[QuarterInyear]オプションを選択できます。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

前の画面に戻ると、すでに四半期が正しい順序で配置されていることがわかります。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

先ほどとまったく同じことを行っていますが、日ではなく四半期を調べているため、値は異なる粒度で蓄積されます。

たとえば、 2020 年第 2 四半期の総売上高は2,839,495 ドルです。しかし、 Sales LY値を見ると、CALCULATE 関数によって コンテキストが 1 年前に変更され、2019 年第 2 四半期の Total Sales値は$3,665,971になります。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

CALCULATE関数使用すると、数式や計算を書き直すことなく、同様の洞察を使用してさまざまな方法で作業できます。

CALCULATEを使用した特定の場所の総売上高

また、 CALCULATE内のコンテキストを調整する別の方法も紹介したいと思います。

以前に計算のコンテキストを完全に変更しましたが、ここでは代わりにコンテキストをわずかにフィルターする例を示したいと思います。

特定の場所、特にノースカロライナでのすべての売上を計算したい場合はどうすればよいでしょうか?

これを行うには、 Sales in NCという新しいメジャーを作成し、式としてTotal Salesを使用してCALCULATEを使用し、次にLocations テーブル州コードをフィルターとして使用して、それを"NC"に設定します。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

新しいメジャーをドラッグすると、 Product Nameのコンテキストに基づいて、特定の地域のみの総売上の内訳を確認できます。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

コンテキストが完全に変更されたSales LYと比較して、 NC の Salesのコンテキストは単純に調整されました。

コンテキストを調整できる方法がたくさんあるため、CALCULATE が最もよく使用される関数になるのはこのためです。

LuckyTemplates の高度なコンテンツを見ると、CALCULATE を使用すると数式を非常に効率的に記述することができるため、ほとんどすべての項目でCALCULATEが使用されていることがわかります。

Microsoft Excel で 2 ~ 3 行にわたる非常に長い数式が記述されているのを見たことがあるかもしれません。LuckyTemplates では、コンテキストを調整するだけで、さまざまな計算を行うことができます。

別の例を示すために、ノースカロライナ州の売上高メジャーをQuarterInCalendarメジャーとともにドラッグします。

LuckyTemplates CALCULATE: 高度な DAX 数式の鍵

式を変更する必要はありませんでしたが、調整した前の例と比較してコンテキストを追加しました。

すでに四半期売上高があるため、ノースカロライナ州の売上高を追加すると、ノースカロライナ州特有の四半期売上高が得られます。

Sales LYでタイム インテリジェンス関数を使用して日付を操作した場合のように、コンテキストを完全に変更するのと比較すると、わずかな違いがあります。

Sales in NCメジャーは、日付であるQuarterInCalendarの初期コンテキストとは関係のない、単なる場所のフィルターです。


LuckyTemplates Time Intelligence を使用した合計変更の動的なパーセンテージの計算
LuckyTemplates で DAX を使用した累積実行レートの計算 Power
BI で DAX を使用して購入間の日数の差を計算する方法

結論

これは、LuckyTemplates のCALCULATE関数を使用して計算のコンテキストを変更、調整、または追加する方法についての単なる紹介でした。

これを自分が取り組んでいる何かにどのように適用できるかを考えてほしい。この機能を活用できれば、数式の組み合わせやテクニックを素早く実行して、より多くのことを計算することができます。

ではごきげんよう、


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 を使用して数式内に仮想リレーションシップを作成する方法を説明します。