Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10全般 : Microsoft 365)
複数項目ある際のデータ統合について
投稿日時: 23/04/07 13:55:14
投稿者: yuiyui

データ加工作業で以下の作業を簡略化できないか確認したく投稿いたしました。
 
Excelに以下のような【商品】【会社】【売上金額】という項目を持つシートがあります。
 

商品	会社	売上金額
A	東京	11.11111111
A	東京	12.11111111
A	東京	13.11111111
A	神奈川	14.11111111
A	神奈川	15.11111111
A	神奈川	16.11111111
A	千葉	17.11111111
A	千葉	18.11111111
A	千葉	19.11111111
B	東京	23.11111111
B	東京	24.11111111
B	東京	25.11111111
B	神奈川	26.11111111
B	神奈川	27.11111111
B	神奈川	28.11111111
B	千葉	29.11111111
B	千葉	30.11111111
B	千葉	31.11111111

 
このデータを
【商品】ごと(AかBか)かつ更に【会社】ごと(東京・神奈川・千葉)という
複数の項目で売上金額の統合を行いたいのですが、
この形を作るための方法などご存じでしたら確認したいです。
(商品Aで東京の合計売上、商品Bで東京の合計売上...商品Bで千葉の合計売上..という感じで表示させるようにしたい)
 
↓完成版(イメージ) ※売上金額のところが上記の商品ごと会社別に合計された金額
 
商品	会社	売上金額
A	東京	36.33333333
A	神奈川	45.33333333
A	千葉	54.33333333
B	東京	72.33333333
B	神奈川	81.33333333
B	千葉	90.33333333

 
どなたか作業方法おわかりでしたら、お力添えいただければと思います。。
よろしくお願いいたします。
 
 
[/code]

回答
投稿日時: 23/04/07 14:34:16
投稿者: Suzu

「挿入」タブ 「テーブル」の「ピボットテーブル」-「テーブルまたは範囲から」
 
で、 テーブル/範囲 にて、標題を含め全データ範囲を指定、新規ワークシートを選択し OK
 
画面右側に、ピボットテーブルのフィールド が表示されます。
その上の画面内に、「商品」「会社」「売上金額」 が表示され、そのすぐ左にチェックボックスが表示されます。
 
それらの、項目を
  「行」へ「商品」、「会社」
  「値」へ「売上金額」
  をドラッグアンドドロップ
 
を行うと
 
 
希望の形状に近い形で集計表生成されますから
その生成された表内のセルをアクティブにすると
リボンに、「ピボットテーブル分析」「デザイン」が追加されます。
 
その「デザイン」を選択し
レイアウトの
「小計」▼マーク から 「小計を表示しない」を選択
「レポートのレイアウト」▼マークから「表形式で表示」
                  「アイテムのラベルを全て繰り返す」
 
で、希望の表になるでしょう。

回答
投稿日時: 23/04/07 17:23:03
投稿者: んなっと

●PowerQueryで商品・会社の2つの列を選択して[グループ化]
 [新しい列名]:売上合計など [操作]:合計 [列]:売上金額
 とする方法もあるかもしれません。
 
●数式の場合はこんな感じ。
 
    A    B     C D   E    F     G
 1 商品  会社 売上金額   商品  会社 売上金額
 2   A  東京 11.11111    A  東京 36.33333
 3   A  東京 12.11111    A 神奈川 45.33333
 4   A  東京 13.11111    A  千葉 54.33333
 5   A 神奈川 14.11111    B  東京 72.33333
 6   A 神奈川 15.11111    B 神奈川 81.33333
 7   A 神奈川 16.11111    B  千葉 90.33333
 8   A  千葉 17.11111              
 9   A  千葉 18.11111              
10   A  千葉 19.11111              
11   B  東京 23.11111              
12   B  東京 24.11111              
13   B  東京 25.11111              
14   B 神奈川 26.11111              
15   B 神奈川 27.11111              
16   B 神奈川 28.11111              
17   B  千葉 29.11111              
18   B  千葉 30.11111              
19   B  千葉 31.11111              
 
E2
=LET(a,A2:B500,UNIQUE(FILTER(a,TAKE(a,,1)<>"")))
G2
=LET(a,A2:C500,SUMIFS(TAKE(a,,-1),TAKE(a,,1),TAKE(E2#,,1),INDEX(a,,2),INDEX(E2#,,2)))
 
 
※または
E2
=LET(x,A2:C500,y,FILTER(x,TAKE(x,,1)<>""),a,UNIQUE(DROP(y,,-1)),
HSTACK(a,BYROW(a,LAMBDA(r,
 SUM(BYROW(y,LAMBDA(s,TAKE(s,,-1)*AND(DROP(s,,-1)=r))))))))

投稿日時: 23/04/09 11:24:50
投稿者: yuiyui

Suzuさん
んなっとさん
 
早速のご返信ありがとうございます!
ピボットテーブルとpowerqueryでのやり方両方試してみたところ、
無事希望の形に作成することができました。
 
詳しく操作方法を記載してくださり感謝です。
ありがとうございました。