見出し画像

Power BI - M言語やDAX関数でエクセル関数のLEFT、RIGHT、MIDをどうかくか

普段エクセルをいじっている人がPower BIで文字列や数字から
部分的に文字列や数字を抽出したいとき、迷うと思います。

僕も久しぶりにM言語やDAX関数で
文字列や数字から部分的に抽出して日付を作りたいときなど、
迷ってしまいます。

まとめ

Excel関数とM言語とDAX関数のそれぞれの対応関係は以下の通りです。
ExcelとDAXは同じで、M言語だけ異なります。

スライド1

具体例

次に、よくある(?)ファイル名称に埋め込まれている日付を表現する文字列から、日付を作成したい場合の書き方を比較してみました。

スライド2

M言語の場合だけ少し注意が必要です。

日付としてM Queryに認識してもらうためには、「#date」を用いて日付に変換する必要がありますが、この関数の引数はすべて「数字」です。

▼「#date」についての詳細はこちらを参照してください。


したがって、抽出した文字列(Text)は、数字(Number)に変換しておく必要があります。

▼データ型の変換方法についてのまとめはこちらを参照してください


最後に

抽出元が「文字列」であった場合を例にしてみましたが、
抽出元が「数字」であったとしても、上記のように「型の変換」をしながら、対応可能になります。


また何か思いついたら書きます。

この記事が気に入ったらサポートをしてみませんか?