こちらは素人です。
エクセル2016でパワークエリ、ピボットテーブルを使います。
office2016スタンダードなので、パワーピボットタブ出ません。
(「開発」タブのCOMアドインにパワーピボットがない)
前回、分からないことをメモで書いたが、それ以前につまづくところ。基礎。
合計(sum)について
(1)下記のテーブルがあるとします。
(列名ずれてます)
ID 種類 名称 月日 販売単価 数量 売上 原価 利益
A001 飲料 お茶 2021/4/1 120 10 1200 60 600
A002 飲料 白ワイン 2021/4/1 1000 5 5000 500 2500
A003 飲料 赤ワイン 2021/4/1 1500 3 4500 800 2100
A004 デザート プリン 2021/4/1 100 8 800 80 160
A005 デザート ゼリー 2021/4/1 130 5 650 100 150
中の数式は
「売上」列は、販売単価*数量
「利益」列は、売上-(数量*原価)
です。
(2)これをパワークエリに読み込みます。(データモデルに追加もします)
(列名ずれてます)
ID 種類 名称 月日 販売単価 数量 売上 原価 利益 利益率(クエリ)
P001 飲料 お茶 2021/4/1 120 10 1200 60 600 50.00%
P002 飲料 白ワイン 2021/4/1 1000 5 5000 500 2500 50.00%
P003 飲料 赤ワイン 2021/4/1 1500 3 4500 800 2100 46.67%
P004 デザート プリン 2021/4/1 100 8 800 80 160 20.00%
P005 デザート ゼリー 2021/4/1 130 5 650 100 150 23.08%
上記表は、カスタム列の追加で、
利益率(クエリ)=[利益]/[売上]
列を追加し、パーセンテージにしてます。
(3)ピボットテーブルを作成します。(白いセルでピボットテーブル起動。データモデル利用)
(行ラベルずれてます)
行ラベル 合計 / 売上 合計 / 利益 合計 / 利益率(クエリ)
デザート 1450 310 43.08%
ゼリー 650 150 23.08%
プリン 800 160 20.00%
飲料 10700 5200 146.67%
お茶 1200 600 50.00%
赤ワイン 4500 2100 46.67%
白ワイン 5000 2500 50.00%
総計 12150 5510 189.74%
こんな感じで配置してます。
行・・・「種類」「名称」
値・・・「合計/売上」「合計/利益」「合計/利益率(クエリ)」
(考察:)
単純に「合計/利益率(クエリ)」各商品の利益率は合っていますが、(商品)種類は、違ってます。(総計も利益率189.74%って・・・)
各商品の利益率を単純に足しています。
野球選手の打率と考えると分かりやすいのですが、チーム打率(種類)を出すのに、各選手(各商品)の打率を合算しているのでおかしなことになります。
(4)ピボットテーブルにメジャー(DAX)追加。
売上合計=sum([売上])
利益合計=sum([利益])
利益率(ピボットテーブル)=DIVIDE([利益合計],[売上合計])
この3つを配置します。
(行ラベルずれてます)
行ラベル 合計 / 売上 合計 / 利益 合計 / 利益率(クエリ) 売上合計 利益合計 利益率(ピボットテーブル)
デザート 1450 310 43.08% 1450 310 21.38%
ゼリー 650 150 23.08% 650 150 23.08%
プリン 800 160 20.00% 800 160 20.00%
飲料 10700 5200 146.67% 10700 5200 48.60%
お茶 1200 600 50.00% 1200 600 50.00%
赤ワイン 4500 2100 46.67% 4500 2100 46.67%
白ワイン 5000 2500 50.00% 5000 2500 50.00%
総計 12150 5510 189.74% 12150 5510 45.35%
こんな感じで上位レベルの「種類」でも利益率が計算されます。
(チーム打率が計算できるイメージ)
おそらくポイントとしては、
・上位レベルのあるもので上位でもきちんと計算させるには、
<計算に使用する各項目(アイテム)をメジャー(DAX)にしておく必要あり>
ということではないでしょうか。(素人です)
参考:「Excelパワーピボットで7つのステップでデータ集計・・・」
この本は詳細に書いてあるので、自分の気になるところを今回整理しました。
この本はsumx(イテレータ関数)までは書いていないのですが、使い方が分かれば、
ただのsumでもいろんなことができそうです。