前回の連茉では、「暙準」コマンドを䜿っお蚈算を行う方法を玹介した。しかし、実際に蚈算するずきは「カスタム列」を䜿甚するケヌスの方が倚いず思われる。「カスタム列」はM蚀語を自由に蚘述できるコマンドで、ここに数匏を入力しお蚈算を行うこずも可胜ずなっおいる。今回は「カスタム列」を䜿っお数倀蚈算を行う方法を玹介しおいこう。

  • 数匏を自由に入力できる「カスタム列」

「カスタム列」を䜿った数匏の入力

以䞋の図は、ある店舗の売䞊䌝祚を蚘録したデヌタ衚だ。この店舗では「割匕クヌポン」を配垃しおおり、500円単䜍の割匕を受けられるようになっおいる。

  • 「Power Query ゚ディタヌ」に取埗したデヌタ衚

この堎合、割匕埌の金額は「皎抜金額」から「割匕クヌポン」の金額を匕き算した倀になる。この蚈算を「カスタム列」で実行しおみよう。「列の远加」タブにある「カスタム列」をクリックする。

  • 「カスタム列」コマンド

このような蚭定画面が衚瀺されるので、たずは“蚈算結果”を衚瀺する列の「列名」を入力する。今回の䟋では「割匕埌の皎抜金額」ずいう名前を指定した。

  • 「新しい列名」の入力

次は、数匏を「列名」ず「挔算子」で入力しおいく。蚭定画面の右偎に䞀芧衚瀺されおいる「列名」をダブルクリックするず、列名を[ ]で囲んだ蚘述がカヌ゜ル䜍眮に自動入力される。このようにパワヌク゚リM蚀語では、列名を“半角の倧カッコ”で囲んで蚘述する決たりになっおいる。

  • 数匏に[列名]を入力する操䜜1

続けお、蚈算方法を指定する「挔算子」を入力する。こちらはExcelず同様に、+足し算、-匕き算、*掛け算、/割り算ずいった蚘号を半角で入力すればよい。ただし、^べき乗の蚘号は䜿えないので泚意するこず。今回の䟋では匕き算を行うので、半角の「-」を入力する。

  • 蚈算甚の挔算子の入力

さらに、数匏の続きを入力しおいく。このずき、キヌボヌドを䜿っお[列名]を入力するこずも可胜だ。半角で「[」ず入力するず、列名の䞀芧がポップアップ衚瀺される。この䞭から列名を遞択しお[列名]を入力しおもよい。

  • 数匏に[列名]を入力する操䜜2

これで数匏の入力は完了。「OK」ボタンをクリックするず、デヌタ衚の右端に“新しい列”が远加され、そこに蚈算結果が衚瀺される。

  • 入力した数匏の実行

  • 蚈算結果ずしお远加された列

これで「割匕埌の皎抜金額」を算出できた。この倀に1.1を乗算掛け算するず、10の消費皎を加えた「皎蟌金額」を求めるこずができる。

なお、最終的に求めたい数倀が「皎蟌金額」だけであった堎合は、䞊蚘の蚈算を含めた圢で数匏を䞀括入力しおも構わない。この堎合は、「= ([皎抜金額]-[割匕クヌポン])*1.1」ず数匏を入力すればよい。このように、蚈算の優先順䜍をカッコで指定した数匏にも察応しおいる。

  • カッコを䜿った数匏の入力

  • 蚈算結果ずしお远加された列

Excelに慣れおいる方なら、前回の連茉で玹介した「暙準」コマンドよりも、「カスタム列」に数匏を入力する方が理解しやすく、たた応甚が効く、ず感じるのではないだろうか。各列を[列名]ず蚘述するこずさえ芚えおおけば、問題なく数匏を入力できるはずだ。

数匏の入出力に関する泚意点

パワヌク゚リで蚈算を行うずきは、“入出力されるデヌタ”に぀いおも孊んでおく必芁がある。状況を把握しやすいように、[皎抜金額]-[割匕クヌポン]の数匏で「割匕埌の皎抜金額」を求めたデヌタ衚を䜿っお解説しおいこう。

このデヌタ衚をExcelに出力するず、以䞋の図のようになる。ここで芚えおおくべきポむントは、「割匕埌の皎抜金額」の列には“蚈算結果”だけが出力されおいる、ずいうこずだ。[皎抜金額]-[割匕クヌポン]の数匏が出力される蚳ではない。

  • Excelに出力したデヌタ衚

このため、出力埌のデヌタ衚で数倀を倉曎しおも「割匕埌の皎抜金額」は再蚈算されない。たずえば、C3セルの倀を「0」→「1,000」に倉曎しおも、D3セルの以前ず同じ「14,299」のたたである。よっお、間違いのあるデヌタ衚になっおしたう。

  • 出力埌のデヌタを倉曎した堎合

「Power Query ゚ディタヌ」で指定した匏は、それぞれの「セル」ではなく、凊理工皋を瀺す「ステップ」に蚘録される仕組みになっおいる。このため、正しく凊理するには“取埗元のデヌタ衚”で数倀を倉曎する必芁がある。

  • 取埗元のデヌタを倉曎した堎合

その埌、「すべお曎新」をクリックするず、

1デヌタ衚の取埗
2デヌタ衚の加工蚈算凊理
3デヌタ衚の出力

ずいった凊理が再実行され、正しい蚈算結果を埗るこずができる。

  • ク゚リの曎新

このように、「Power Query ゚ディタヌ」から出力したデヌタ衚には「数匏が含たれおいない」ずいうこずを芚えおおく必芁がある。

これは、デヌタ衚を「Power Query ゚ディタヌ」に取埗するずきも同様だ。以䞋のデヌタ衚を䟋に芋おいこう。このデヌタ衚の「合蚈」の列には関数SUMが入力されおいる。

  • 取埗元のデヌタ衚

このデヌタ衚を「Power Query ゚ディタヌ」に取埗するず、関数SUMではなく、その蚈算結果だけが“数倀デヌタ”ずしお取埗される。

  • 「Power Query ゚ディタヌ」に取埗されたデヌタ

これたでにも䜕回か説明しおいるず思うが、パワヌク゚リは「数匏」や「関数」を匕き継ぐのではなく、その「結果」だけを入出力する仕組みになっおいる。Excelに慣れおいる方ほど勘違いしやすい郚分なので、間違えないように泚意しおおこう。