【PowerBI】よく使うDAX関数の使い方、構文まとめ

DAX関数 まとめDAX関数
スポンサーリンク

「DAX関数について学びたいが、どの関数で何ができるのかが分からない」「公式サイトでは構文がいまいち理解できない」といった悩みありますよね…。

そんな場合に、今回パワーピボットなどの新Excelのデータ分析で活用できる「よく使うDAX関数一覧」をまとめました。

【本記事で得られること】
・DAX関数について分かる
・DAX関数の構文が分かる
・DAX関数の機能や種類、使い方を理解できる

DAX関数はExcelに似た数式なので比較的簡単に学習できますが、セルではなく列を指定するなど、注意点もありますので、ぜひ本記事をご参考ください!

パワークエリやDAX、パワーピボットなどの新Excelの機能を使いこなすのは、現代の社会人には必須能力かと思います。個人的には、本で学びたい方は「モダンExcel」、動画で学びたい方はUdemyが一番勉強になりました。

個人的には、Udemyでの動画学習で実際に使いながら学ぶことで勉強になりました!

DAX関数とは? Excel関数との違い

DAX関数とはData Analysis Expressionsの略で、ExcelやPowerBIのデータ操作や計算、集計などを効率的に実行できる関数です。Excel関数に比べ、より複雑なデータ加工や計算に対応するために設計されたので、Excel操作を効率的に進めるには学習必須です!

DAX関数はExcel関数と似ていますが、下記の点が主な違いです。
◆DAX関数 VS Excel関数

DAX関数 Excel関数 違い 比較

このように、DAX関数はExcel関数に比べ、
・より効率的に高度な分析ができる
・PowerBIやPowerPivotなどの新Excel機能への活用ができる
点が大きなメリットです。

私は、Excel関数がセルを指定した計算に対し、DAX関数はデータ列を指定した計算というのが、最初なかなか慣れずに戸惑いました…。ただ、列さえ指定すればよいので、使い方が理解できるとDAX関数の方が一括操作でき、簡単である場面も多いです!

・新Excelの機能を効率的に使うには、DAX関数は必須!
・Excel関数との大きな違いはデータ列を設定する!

スポンサーリンク

機能別のDAX関数の構文、使い方

本サイトでは、DAX関数の構文解説と使い方、事例紹介をまとめています。これだけ覚えていればOK!というDAX関数を機能別に一覧にしましたので、索引用にご活用ください!

◆機能別DAX関数の一覧
基本のDAX関数を理解すれば、組み合わせて活用することで色々なことに応用ができます!

機能代表的な関数
数値関数
集計関数
SUM, AVERAGE, MIN, MAX, COUNT, DIVIDE
CALCULATE, SUMX, AVERAGEX, COUNTX, MINX
文字列関数CONCATENATE, LEFT, RIGHT, LEN, FORMAT
MID, SUBSTITUTE関, FIND
日付関数YEAR, MONTH, DAY, TODAY, EOMONTH
DATEADD, DATEDIFF, TOTALYTD
論理関数IF, AND, OR, NOT, SWITCH
テーブル関数FILTER, ALL, VALUES, RELATEDTABLE, RANKX
CALENDAR, LOOKUPVALUE

各DAX関数についての詳細な構文と使い方は下記以降をご参考ください。

スポンサーリンク

DAX関数 数値/集計関数

数値関数は数値型のデータに対して計算を行う関数です。集計関数は、データの要約やグループ化など、データセットを操作した計算ができるDAX関数です。例えば、SUMが数値関数で、SUMXが集計関数という感じです。

SUM、SUMX関数

SUM関数は合計計算ができるDAX関数です。条件を満たした合計を求めるSUMIFS関数はDAX関数にはないので、CALCULATE関数と組み合わせる必要があります。

【SUM関数 構文】合計

=SUM(<column>)

つまり、
=SUM(列)
合計したい列を指定

▶(参照)Microsoft DAX関数 SUM

【SUMX関数 構文】テーブルや計算式を指定した合計

=SUMX(<table>, <expression>)
つまり、
=SUMX(テーブル, 計算式)
テーブル:任意のデータテーブルを指定
計算式:掛け算、引き算などの列同士の計算式を指定

▶(参照)Microsoft DAX関数 SUMX

◆できること
SUM、SUMX関数で売上などの合計を計算できます。また、CALCULATE関数と組み合わせれば、SUMIFS関数的に条件を追加した合計の計算が可能です。

合計 SUM SUMX DAX

◆詳細事例と使い方
SUM関数系の詳しい説明、事例は下記をご参考ください。
SUM、SUMX関数で合計、条件付き合計の計算

AVERAGE、AVERAGEX関数

AVERAGE、AVERAGEX関数は平均値の計算ができるDAX関数です。

【AVERAGE関数 構文】平均

=AVERAGE(<column>)

つまり、
=AVERAGE(列)
平均したい列を指定

▶(参照)Microsoft DAX関数 AVERAGE

【AVERAGEX関数 構文】テーブルや計算式を指定した平均

=AVERAGEX(<table>,<expression>)
つまり、
= AVERAGEX(テーブル,計算式)
テーブル:任意のデータテーブルを指定
計算式:掛け算、引き算などの列同士の計算式を指定

▶(参照)Microsoft DAX関数 AVERAGEX

◆詳細事例と使い方
AVERAGE、AVERAGEX関数の詳しい説明や、事例は下記をご参考ください。
▶AVERAGEX関数で平均値の計算

スポンサーリンク

COUNT系関数

COUNT系の関数は数値や文字列、日付、行数などをカウントできるDAX関数です。基本のCOUNT関数以外にも、COUNTX、COUNTROWS、COUNTBLANK、DISTINCTCOUNT関数などがよく使われます。

No.関数説明
1CountCount(列)
数値、文字列、日付などをカウント
※空白の数はカウントしない
2CountACountA(列)
Count Allの略で全てカウント
3CountXCountX(テーブル,計算式)
テーブルはFILTER関数との組み合わせが多い
4CountAXCountAX(テーブル,式)
CountAとCountXが合体したもの
5CountRowsCountRows(テーブル)
テーブルの行数をカウント
空白の数もカウントされる
6CountBlankCountBlank(列)
列の空白の数をカウント
7DistinctCountDistinctCount(列)
重複削除したカウント
8DistinctCountNoBlankDistinctCountNoBlank(列)
空白を無視(NoBlank)して
重複削除したカウント
※特によく使う関数を濃い文字にしています。

【COUNT関数 構文】カウント、空白はカウントしない

=COUNT(<column>)

つまり、
=COUNT(列)
空白以外の数値、文字列、日付などをカウント

▶(参照)Microsoft DAX関数 COUNT

【COUNTX関数 構文】テーブルや計算式を指定したカウント

=COUNTX(<table>,<expression>)
つまり、
= COUNTX(テーブル,計算式)
テーブル:任意のデータテーブルを指定
計算式:列同士の計算式を指定

▶(参照)Microsoft DAX関数 COUNTX

【COUNTROWS関数 構文】テーブルの行数をカウント

=COUNTROWS([<table>])
つまり、
= COUNTROWS(テーブル)
テーブル:任意のデータテーブルを指定
テーブルの行数をカウントするので、任意のテーブルに変えることができる、FILTER関数との組み合わせる場合が多い

▶(参照)Microsoft DAX関数 COUNTROWS

【DISTINCTCOUNT関数 構文】重複を削除してカウント

=DISTINCTCOUNT(<column>)

つまり、
=DISTINCTCOUNT(列)
指定した列の重複を削除してカウント

▶(参照)Microsoft DAX関数 DISTINCTCOUNT

◆詳細事例と使い方
COUNT系関数の詳しい説明や、事例は下記をご参考ください。
▶COUNT系関数で色々な条件でのカウント計算
▶DISTINCTCOUNT関数で重複削除した行数のカウント

スポンサーリンク

MAXX、MINX関数

MAXX、MINX関数は条件を追加した最大、最小ができるDAX関数です。MAX、MIN系の関数には主に下記の種類があります。

No.関数説明
1MAXMAX(列)
指定した列の最大値を返す
2MINMIN(列)
指定した列の最小値を返す
3MAXXMAXX(テーブル,式)
指定したテーブルと計算式の最大値を返す
テーブルはFILTER関数と組み合わせできる
式はSUMなどの計算式を指定できる
4MINXMINX(テーブル,式)
指定したテーブルと計算式の最小値を返す
テーブルはFILTER関数と組み合わせできる
式はSUMなどの計算式を指定できる
5MAXAMAXA(列)
指定した列の最大値を返す
MAX関数と異なり数値型以外の列も使える
6MINAMINA(列)
指定した列の最小値を返す
MIN関数と異なり数値型以外の列も使える
※特によく使う関数を濃い文字にしています。

【MAX、MIN関数 構文】最大、最小

=MAX(<column>)
=MIN(<column>)

つまり、
=MAX(列)
=MIN(列)
指定した列の最大/最小値を返す

▶(参照)Microsoft DAX関数 MAX
▶(参照)Microsoft DAX関数 MIN

【MAXX、MINX関数 構文】テーブルや計算式を指定した最大、最小

=MAXX(<table>,<expression>)
=MINX(<table>,<expression>)
つまり、
= MAXX(テーブル,計算式)
= MINX(テーブル,計算式)
テーブル:任意のデータテーブルを指定
計算式:列同士の計算式を指定

▶(参照)Microsoft DAX関数 MAXX
▶(参照)Microsoft DAX関数 MINX

◆できること
MAXX、MINX関数とFILTER関数を組み合わせれば、売上最大の日や商品などの条件を追加した最大、最小の計算ができます。

MAXX MINX DAX

◆詳細事例と使い方
MAX、MIN系関数の詳しい説明や、FILTER関数と組み合わせたメジャー作成の事例は下記をご参考ください!
▶MAXX、MINX関数で条件を追加した最大、最小値の計算

スポンサーリンク

DIVIDE関数

DIVIDE関数は割り算ができるDAX関数です。

【DIVIDE関数 構文】割り算

=DIVIDE(<numerator>, <denominator> [,<alternateresult>])
numerator :分子
denominator :分母
alternateresult:0による除算がエラーになった時に返す値

つまり
= DIVIDE(分子,分母, 0)
でゼロ除算を自動的に処理してくれる割り算ができる

▶(参照)Microsoft DAX関数 DIVIDE

◆できること
DIVIDE関数で売上、利益データから利益率メジャーの作成などができます。

DIVIDE関数 利益率 割り算

◆詳細事例と使い方
DIVIDE関数の詳しい説明や、事例は下記をご参考ください。
▶DIVIDE関数で割り算し利益率の計算

スポンサーリンク

RANKX関数

RANKX関数は順位を返すDAX関数です。

【RANKX関数 構文】指定した式の順位を返す

RANKX(<table>, <expression>[, <value>[, <order>[, <ties>]]])
つまり、
RANKX(①テーブル, ②計算式, ,③降順/昇順, ④同一順位の設定)
①テーブル:任意のデータテーブルを指定
②計算式:順位付けする値の計算式、基本はメジャーを指定
・value:別の列を参照して順位付けする場合に使う。基本は省略
③降順/昇順:降順/昇順であるDESCかASCを指定
 DESC:descending order、ASC:ascending order
④同一順位の設定:SkipかDenseで同じ値の場合の対応を指定
※value、③order、④tiesは省略可能

▶(参照)Microsoft DAX関数 RANKX

◆できること
RANKX関数で売上の大きい順や降順や昇順、同じ値の場合の対応を設定したメジャーを作成できます。

RANKX関数 DAX

◆詳細事例と使い方
RANKX関数の詳しい説明や、事例は下記をご参考ください。
▶RANKX関数で順位付け

スポンサーリンク

CALCULATE関数

CALCULATE関数はDAX関数の中でも最も重要と言ってよい関数です。指定した条件やフィルターを適用して、計算ができる超便利で汎用性の高いDAX関数です。ExcelでいうSUMIF、AVERAGEIF、COUNTIF関数にあたる「条件を満たす計算」をする場合に必要です!

【CALCULATE関数 構文】条件を指定したデータ計算ができる

=CALCULATE(<expression>[, <filter1> [, <filter2> [, …]]])

つまり、
= CALCULATE(式,フィルター①,フィルター②,…)
フィルター箇所に複数条件を追加して計算できる

▶(参照)Microsoft DAX関数 CALCULATE

◆詳細事例と使い方
CALCULATE関数の詳しい説明や、事例は下記をご参考ください。
▶CALCULATE関数で条件付きの計算

スポンサーリンク

DAX関数 文字列関数

文字列関数はテキストや文字列データを操作する関数で、文字の連結や変換、切り取りなどができます。

LEFT、RIGHT、MID関数

LEFT、RIGHT、MID関数は指定した文字を抽出できるDAX関数です。

【LEFT関数 構文】左から文字数を指定して抽出

=LEFT(<text>, <num_chars>)

つまり、
=LEFT(データ列,抽出したい文字数)

▶(参照)Microsoft DAX関数 LEFT

【RIGHT関数 構文】から文字数を指定して抽出

=RIGHT(<text>, <num_chars>)

つまり、
=RIGHT(データ列,抽出したい文字数)

▶(参照)Microsoft DAX関数 RIGHT

【MID関数 構文】指定した位置から文字数を指定して抽出

=MID(<text>, <start_num>, <num_chars>)

つまり、
=MID(データ列,抽出したい先頭文字の位置,抽出したい文字数)

▶(参照)Microsoft DAX関数 MID

◆できること
LEFT、RIGHT、MID関数で任意の文字を抽出できます。

MID RIGHT LEFT 文字抽出 DAX

◆詳細事例と使い方
LEFT、RIGHT、MID関数の詳しい説明や、事例は下記をご参考ください。
▶LEFT、RIGHT、MID関数で文字の抽出

スポンサーリンク

LEN関数、FIND関数

LEN関数は文字数を取得でき、FIND関数は指定した検索する文字までの文字数を取得できるDAX関数です。

【LEN関数 構文】文字列の長さ(文字数)を取得

=LEN(<text>)

つまり、
=LEN(列)
文字数を取得、空白スペースは文字としてカウント

▶(参照)Microsoft DAX関数 LEN

【FIND関数 構文】検索する文字までの文字数を取得

=FIND(<find_text>, <within_text>[, [<start_num>][, <NotFoundValue>]])

つまり、
=FIND(”①検索文字” , ②データ列,③,④)
③:検索を開始する文字数
④:検索文字が見つからない場合に返す値
③④は省略可能
例えば、スラッシュ「/」までの文字数を取得する場合は、
=FIND(”/” , ’データ列)

▶(参照)Microsoft DAX関数 FIND

SUBSTITUTE関数

SUBSTITUTE関数は指定の文字を変換できるDAX関数です。

【SUBSTITUTE関数 構文】指定の文字を変換

=SUBSTITUTE(<text>, <old_text>, <new_text>, <instance_num>)

つまり、
=SUBSTITUTE(データ列,変換前の文字,変換後の文字,変換する番号)
例えば、2個目のスラッシュ「/」を「▲」に変換する場合は、
=SUBSTITUTE(‘データ列 , ”/” , ”▲” , 2)

▶(参照)Microsoft DAX関数 SUBSTITUTE

◆できること
例えば、SUBSTITUTE関数で2個目の「/」を「▲」などに変換し、それをFIND関数で文字数を取得してRIGHT関数で指定の文字を抽出しています。

SUBSTITUTE FIND DAX関数

詳細は下記記事でも説明していますので、ご参考まで!

▶SUBSTITUTE、FIND、RIGHT関数を用いた文字列の抽出

スポンサーリンク

DAX関数 論理関数

論理関数は条件付きの計算や、複雑な論理判断に使用できる関数です。条件を設定して、データの選択や条件の組み合わせができます。

IF関数、AND/OR/NOT関数

IF関数は条件を設定した計算ができるDAX関数です。AND、OR、NOT関数と組み合わせることで、複数条件を設定したIF構文を作成できます。

【IF関数 構文】

=IF(<logical_test>, <value_if_true>, <value_if_false>)
logical_test:評価する式(条件式)
value_if_true :条件に当てはまる場合に返す値
value_if_false:条件に当てはまらない場合に返す値

つまり
= IF(条件式,条件に合う場合に返す値, 合わない場合に返す値)

▶(参照)Microsoft DAX関数 IF

IF関数に複数条件の設定する方法は下記3つとセットで使います。

・AND関数、&&
 →すべての条件を満たす場合(○○かつ○○)
・OR関数
 →一つでも条件を満たす場合(○○または○○)
・NOT関数

 →その条件を満たしてない場合(○○以外、○○ではない)

▶(参照)Microsoft DAX関数 AND
▶(参照)Microsoft DAX関数 OR
▶(参照)Microsoft DAX関数 NOT

◆詳細事例と使い方
IF関数で条件の設定、複数条件の設定の事例紹介をしています。詳しい説明や、事例は下記をご参考ください。
▶IF関数の使い方、複数条件の設定方法

スポンサーリンク

DAX関数 日付関数

日付関数は日付データの計算、抽出、比較ができるDAX関数です。日付条件を設定した計算をする際には必須のDAX関数です。

FORMAT関数

FORMAT関数は日付などを指定された形式で変換できるDAX関数です。フォーマットを指定することで、日付、時刻、%、小数点以下の桁数など、さまざまな変換ができます。

【FORMAT関数 構文】指定した書式に変換

=FORMAT(<value>, <format_string>)

つまり、
=FORMAT(日付列,”カスタム文字”)
日付列を指定した書式に従って変換

▶(参照)Microsoft DAX関数 FORMAT

よく使うカスタム文字の参考表
カスタム文字を変えることで、四半期や時間などの表示に変換できます。

カスタム文字詳細説明
dd先頭に0をつけた日
ddd省略英語曜日(Sun-Sat)
mm先頭に0をつけた月
mmm省略英語月(Jan-Dec)
q四半期(1-4)
yyyy年4桁(例:2023)
yy年2桁(例:23)
ttttt時刻
hh先頭に0をつけた時間(00-23)
nn先頭に0をつけた分(00-59)
ss先頭に0をつけた秒(00-59)

◆詳細事例と使い方
FORMAT関数の詳しい説明や、事例は下記をご参考ください。
▶FORMAT関数で日付の変換

スポンサーリンク

DATEDIFF関数

DATEDIFF関数は日付間の差分を取得できるDAX関数です。

【DATEDIFF関数 構文】日付間の差分を取得

=DATEDIFF(<Date1>, <Date2>, <Interval>)

つまり、
=DATEDIFF(開始日付,終了日付,間隔)
開始、終了日付:日付列などを指定
間隔:比較するときに指定する間隔
    year、quarter、month、week、day など
2つの日付の差分を指定した間隔で計算できる関数

▶(参照)Microsoft DAX関数 DATEDIFF

◆できること
DATEDIFF関数を使えば、リードタイム(LT)、仕掛り日数の計算などが簡単に計算できます。

DATEDIFF DAX 日付差分

◆詳細事例と使い方
DATEDIFF関数の詳しい説明や、事例は下記をご参考ください。
▶DATEDIFF関数で日付間の差分を計算(仕掛り日数の把握)

スポンサーリンク

DATEADD関数

DATEADD関数は日付から指定した数値を引いたり、足したりできる関数です。その名の通り、DATEである日付を、ADD(足したり引いたり)できる関数と覚えておきましょう!

【DATEADD関数 構文】日付の加算、減算

=DATEADD(<dates>,<number_of_intervals>,<interval>)

つまり、
=DATEADD(日付列,数値,間隔)
日付:日付列などを指定
数値:1年前を指定したい場合は「‐1」、2か月前なら「-2」
間隔:year、quarter、month、day などの間隔を指定
指定した数値を、設定した日付間隔で足したり引いたりできる

▶(参照)Microsoft DAX関数 DATEADD

例えば、
DATEADD(日付列,‐2,YEAR) :2年前
DATEADD(日付列,‐1,MONTH):1ヵ月前
DATEADD(日付列,‐1,DAY)  :前日、1日前
と、前年比や前月比などの分析に大活躍します。

◆詳細事例と使い方
DATEADD関数の詳しい説明や、事例は下記をご参考ください。
▶DATEADD関数で前年/前月/前日比の計算

TOTALYTD関数

TOTALYTD関数は年リセットした累積計算ができるDAX関数です。

【TOTALYTD関数 構文】年リセットの累積計算

=TOTALYTD(<expression>,<dates>[,<filter>][,<year_end_date>])

つまり、
=TOTALYTD(式, Dates, [フィルター], [YearEndDate])
:SUMなどで売上合計などの式を指定
Dates:日付テーブルの日付を指定

・フィルター:適用するフィルター、省略可
・YearEndDate:リセット日付、規定は12/31、省略可
年でリセットされる累積計算ができる

▶(参照)Microsoft DAX関数 TOTALYTD

例えば、
TOTALYTD(SUM(‘売上列),’日付列)
で、年リセットされた売上合計を取得できます。

年リセット TOTALYTD 累積計算  DAX関数

◆詳細事例と使い方
TOTALYTD関数を使った累積合計の計算メジャー作成の詳しい事例は、下記をご参考ください。
▶TOTALYTD関数で累積合計の計算

スポンサーリンク

DATESINPERIOD、DATESBETWEEN関数

DATESINPERIOD関数は指定した期間内の日付データを抽出でき、DATESBETWEEN関数は指定した範囲内の日付を抽出できるDAX関数です。2つの使い勝手はほぼ一緒で、移動平均などを求める際によく使われます。

【DATESINPERIOD関数 構文】期間内の日付データを抽出

DATESINPERIOD(<dates>, <start_date>, <number_of_intervals>, <interval>)

つまり、
=DATESINPERIOD(日付列, 開始日, 期間の数, 間隔)
日付列:日付テーブルの日付列を指定
開始日:期間の開始日

期間の数:例えば30日前だと、-30を指定
間隔:year、quarter、month、day などの間隔を指定
どの期間分のデータを抽出するかを設定すればOK!

▶(参照)Microsoft DAX関数 DATESINPERIOD

【DATESBETWEEN関数 構文】範囲内の日付データを抽出

=DATESBETWEEN(<dates>, <start_date>, <end_date>)

つまり、
=DATESBETWEEN(日付列, 開始日, 終了日)
日付列:日付テーブルの日付列を指定
開始日:期間の開始日

終了日:期間の終了日
開始日と終了日の間の期間を抽出!

▶(参照)Microsoft DAX関数 DATESBETWEEN

◆詳細事例と使い方
DATESINPERIODやDATESBETWEEN関数を使えば、移動平均のメジャーが簡単に作成できます。詳しい説明や、事例は下記をご参考ください。

移動平均 DAX DATESBETWEEN DATESINPERIOD関数

▶DATESINPERIOD、DATESBETWEEN関数で移動平均

スポンサーリンク

DAX関数 テーブル関数

テーブル関数はデータのフィルタリング、抽出などができるDAX関数です。テーブル関数で任意のテーブルを作成し、計算式に入れ込むことで応用が処理ができます。

FILTER関数

FILTER関数はその名の通り、データにフィルターをかける関数です。欲しいテーブルの抽出ができるので、条件付きの計算をするうえで非常に重要です!

【FILTER関数 構文】テーブルにフィルターをかける関数

=FILTER(<table>,<filter>)

つまり、
=FILTER(テーブル,フィルター)
指定したデータテーブルにフィルターをかける関数

▶(参照)Microsoft DAX関数 FILTER

◆詳細事例と使い方
例えば、
=FILTER(テーブル, 購入数列 >=3)
ですと、購入数が3個以上データテーブルを抽出できます。

FILTER関数 DAX

FILTER関数の詳しい説明、事例は下記をご参考ください。
▶FILTER関数でテーブルを抽出し、条件付きの計算

SUMMARIZE関数

SUMMARIZE関数は要約テーブルを作成できるDAX関数です。数値計算した要約テーブルや、複数データを統合した要約テーブルを簡単に作成できます。

【SUMMARIZE関数 構文】要約テーブルの作成

SUMMARIZE(<table>, <group_by_column1>, <group_by_column2>, …, <aggregate_expression1>, <aggregate_expression2>, …)

つまり、
=SUMMARIZE(①表, ②グループ化する列, ③列の名前, ④計算式)
要約したい元のデータテーブル
②グループ化する列:要約列、重複削除された項目で表示
③列の名前:任意の名前を””で囲む
④計算式:SUMやAVERAGEなどの計算式

※②③④は複数の列を繰り返し使用できる

▶(参照)Microsoft DAX関数 SUMMARIZE

◆詳細事例と使い方
SUMMARIZE関数を使えば、膨大なデータから商品別や月別に抽出した要約テーブルを簡単に作成できます。

SUMMARIZE関数 要約テーブル データ抽出 DAX


SUMMARIZE関数の詳しい説明、事例は下記をご参考ください。
▶SUMMARIZE関数で要約テーブルの作成

スポンサーリンク

ALL関数

ALL関数はフィルターを解除できるDAX関数です。「ここは計算させたくない!」などの場面で大活躍します。

【ALL関数 構文】フィルターを解除

=ALL( [<table> | <column>[, <column>[, <column>[,…]]]] )

つまり、
=ALL(テーブル,列)
フィルターをかけたくないテーブルまたは列を指定

▶(参照)Microsoft DAX関数 ALL

◆詳細事例と使い方
ALL関数系の詳しい説明、事例は下記をご参考ください。ALLSELECTED、ALLEXCEPT関数についても解説しています。
▶ALL関数でフィルターを解除した計算(ALLSELECTED/ALLEXCEPT)

CALENDAR関数

CALENDAR関数はカレンダーテーブルが自動作成できるDAX関数です。特に、データの日付期間から自動でカレンダーテーブルを作成するCALENDARAUTO関数は、必須レベルに重要です!

【CALENDAR関数 構文】カレンダーテーブルの作成

=CALENDAR(<start_date>, <end_date>)

つまり、
=CALENDAR(開始日,終了日)
開始日から終了日までのカレンダーテーブルを作成
例:CALENDAR(“2019/01/01″,”2022/12/31”)

▶(参照)Microsoft DAX関数 CALENDAR

【CALENDARAUTO関数 構文】カレンダーテーブルの自動作成

=CALENDARAUTO([fiscal_year_end_month])

つまり、
=CALENDARAUTO()
データの最も古い日付と最も新しい日付の間のカレンダーテーブルを自動作成。取り込んだ生データに基づいて自動的に期間が設定される。

▶(参照)Microsoft DAX関数 CALENDARAUTO

◆詳細事例と使い方
CALENDARAUTO関数を使って、カレンダーテーブルの自動作成ができます。テンプレートコード公開中ですので、下記記事をご参考ください。

カレンダーテーブル CALENDARAUTO CALENDAR DAX

▶CALENDAR関数でカレンダーテーブルの簡単作成

スポンサーリンク

LOOKUPVALUE関数

LOOKUPVALUE関数は、Excel関数のVLOOKUP関数に似たデータを連携するDAX関数です。キー項目でデータを連携させる場合に使います。

【LOOKUPVALUE関数 構文】データの連携

=LOOKUPVALUE(
  <result_columnName>,
  <search_columnName>,
  <search_value>
   [, <alternateResult>] )

つまり、
= LOOKUPVALUE(
  ①返す値,
  検索キー,
  ③追加する側の検索キー,
  ④検索が無かった場合に返す値)
※④は省略可

▶(参照)Microsoft DAX関数 LOOKUPVALUE

◆詳細事例と使い方
LOOKUPVALUE関数の詳しい説明、事例は下記をご参考ください。
▶LOOKUPVALUE関数でデータの連携

DISTINCT関数

DISTINCT関数は重複削除ができるDAX関数です。重複削除した状態での行の数や合計の計算に活用できます。

【DISTINCT関数 構文】重複削除

DISTINCT(<column>)

つまり、
=DISTINCT(列)
重複削除計したい列を指定

▶(参照)Microsoft DAX関数 DISTINCT

◆詳細事例と使い方
DISTINCT関数、COUNTROWS関数を組み合わせて、重複削除した行を計算する事例を紹介しています。

DISTINC関数 DAX

▶DISTINCT関数で重複削除した行数の計算

スポンサーリンク

よく使うDAX関数まとめ

今回よく使うDAX関数を索引用に一覧にまとめました。

DAX関数は組み合わせることで、より高度な計算が可能となり、PowerBIや新Excelで大活躍します。本記事で各DAX関数についての理解を深め、日々のデータ分析にご活用ください!

下記でpowerQueryやPowerBIの便利機能をまとめています!

▶PowerBIの便利機能、使い方まとめ

▶パワークエリ、パワーピポットまとめ

最後まで読んでいただき、ありがとうございました!
良かったら↓クリック応援をよろしくお願いします!!

にほんブログ村 サラリーマン日記ブログ IT系サラリーマンへ
にほんブログ村

コメント

タイトルとURLをコピーしました