エクセル関数でA列(品名)D列(金額)・・品名ごとに合計
A列に品名があり、D列に金額があります。
A B C D
1 商品1 ¥100
2 商品2 ¥150
3 商品1 ¥100
4 商品3 ¥200
5 商品2 ¥100
求めたい答えは各商品ごとの合計金額なのですが、関数で可能ですか?(VBAになりますか?)
商品1 ¥200
商品2 ¥250
商品3 ¥200
宜しくお願いします。(アクセスでやれと言われそうですが・・)
回答(3件)
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示
No.3ベストアンサー20pt
こんにちは。
■作業列を使う方法です。
Sheet1 の F列を作業列にします。(作業列はどの列でもかまいません)
Sheet1 の F1に↓
-----------------------------------
=IF(COUNTIF($A$1:A1,A1)=1,ROW(),"")
-----------------------------------
この数式を予測されるA列の最大行までコピーしてください。
A500 までデータが入るだろうと思えば、F500までコピー。
Sheet2 の A1に↓
-----------------------------------------------
=IF(COUNT(Sheet1!F:F)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!F:F,ROW(A1))))
-----------------------------------------------
Sheet2 の B1に↓
-----------------------------------------------
=IF(A1="","",SUMIF(Sheet1!A:A,A1,Sheet1!D:D))
-----------------------------------------------
上の2つの数式を、商品の種類の数+アルファ、コピーしてください。
商品の種類が最大50種類ぐらいだと思えば、50行+アルファ
作業列が目障りなら非表示にしてください。
この回答へのお礼
出来ました!!
感謝です。有難うございました。
No.1です。
列指定を間違えました。
×=SUMIF(A:A,F1,B:B)
↓
○=SUMIF(A:A,F1,D:D)
です。
この回答への補足
少し質問を訂正させて下さい。
A列の品名はランダムに入力されるので、特定のセルに商品名がリストのように並んでいるわけではありません。次のシートのA列に重複しないように拾い上げるにはどうすれば良いですか?その上で先ほどの内容です。(支離滅裂な文章ですみません。)
sheet1
A B C D
1 商品1 ¥100
2 商品2 ¥150
3 商品1 ¥100
4 商品3 ¥200
5 商品2 ¥100
sheet2
A B
1 商品1 ¥200
2 商品2 ¥250
3 商品3 ¥200
↑
商品名もA列から重複させないように拾い上げたいのです。そしてその隣の列へその合計を・・
宜しくお願いします。
この回答へのお礼
ご解答感謝します。
No.1ベストアンサー10pt
こんにちは。maruru01です。
とりあえず、数式での方法です。
仮にF1に「商品1」とある場合は、
=SUMIF(A:A,F1,B:B)
という感じになります。
データの変更がないなら、ピボットでやってもいいでしょう。
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示











