下記ユーザリスト
ユーザID氏名部署12345青井たろう営業部54674赤井一郎A支店
下記売上データ
計上月顧客名商品売上額販売担当1ID販売担当1氏名販売担当1売上比率販売担当1売上販売担当2ID販売担当2氏名販売担当2売上比率販売担当2売上16年1月丸井商事りんご2000012345青井たろう50%1000054674赤井一郎50%1000016年2月角田商店トマト2000054674赤井一郎100%20000
というもので
ユーザリストと売上データをIDで左結合し集計したいのですが全くうまくいきません。
販売担当1の結果と販売担当2の結果を足した集計結果を出したい
集計結果としては、下記のように集計したいのですが可能ですか?
ユーザID氏名売上額12345青井たろう1000054674赤井一郎30000できないことはないです。
が、思った以上にややこしかったです。
ややこしいのは、半角全角処理も入ってるので、なんともいえませんが。。
まずは、データのPIVOT
Pivot Table names ==> Category Name
Pivot Table values ==> Category Value
(*あとから見ると、このRenameはやくに立ってないので特に必要ないです)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ここからが、本番(計算)です。
[項目名 Calculated]
if contains([Category Name],"売上比率") then"売上比率"
elseif contains([Category Name],"Id") then "販売担当ID"
elseif contains([Category Name],"売上") then "売上"
elseif contains([Category Name],"氏名") then "販売担当氏名"
end
[売上額 calculated]
if [項目名 Calculated]="売上" then int([Category Value]) end
[氏名ID calculated]
if [項目名 Calculated]="販売担当ID" then ([Category Value]) end
[担当番号 calculated] <== 半角に揃ってればもうちょっと簡単です。
if ASCII(mid([Category Name],5,1))<0 then ASCII(mid([Category Name],5,1))+240
else ASCII(mid([Category Name],5,1))-48 end
[Sales x person] <==これは、月単位とかの計算が入ってくると、修正しないといけないです。
{fixed [商品],[担当番号 calculated]:sum([売上額 calculated])}
Name Tableをリンク
で、氏名と部署をTableから持ってきて表示
以上です。
****************************** 基本は同じコンセプト(二つ以上の項目をひとつにまとめる)で、ユニオン使ったほうが簡単だと思います。
******************************* バージョン9.3以上に限られますが、こういう感じ。
むらかみ