Excel (一般機能)

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

 
(Windows 8 : Excel 2007)
データの抽出
投稿日時: 17/07/16 14:47:25
投稿者: タコタコ

A列    B列  C列
a1002-1 1200  3
a01002-1 1320 5
a1002-1 1203 2
a01003-1 2000 5
a01002-1 1320 5
a01002-1 1300 2
 
A列とB列が一致するデータがあればC列の数量をたしてB列とC列をかけて合計をD列に出したい
のですが、どうしたらいいでしょうか
 
例えばA1のデータに一致するのはないのでそのまま1200×3で3600がD1に入ります
D2にはA2とA5が一致するので1320×10で13200がD2に入ります
合うデータを集計してかけて合計をDに出したいのですが、できますか
宜しくお願いいたします

回答
投稿日時: 17/07/16 15:49:36
投稿者: WinArrow
投稿者のウェブサイトに移動

説明が不十分です。
  
 >A列とB列が一致するデータがあれば
 この表現は、A列とB列で一致するですが、
  
下の説明では
A列の中で重複するデータがあれば、SUM(B列*C列)
ということなので
説明が整合していない
  
もう一つは、
 A2とA5に重複していますが、
 D2=(B2*C2)+(B5*C5)
  
A5の方も同じに計算してよいのかな?
  
また、A6も重複したいるけど・・・・どうするんですか?
 

回答
投稿日時: 17/07/16 15:57:46
投稿者: んなっと

たぶんこんな感じ。
 
     A   B C   D
1  a1002-1 1200 3  3600
2 a01002-1 1320 5 13200
3  a1002-1 1203 2  2406
4 a01003-1 2000 5 10000
5 a01002-1 1320 5 13200
6 a01002-1 1300 2  2600
 
D1
=B1*SUMIFS(C$1:C$100,A$1:A$100,A1,B$1:B$100,B1)
下方向・↓

回答
投稿日時: 17/07/16 16:06:38
投稿者: んなっと

SUMIFSは優秀な関数で、使用範囲に合わせて範囲を限定してくれるので
列全体指定の
=B1*SUMIFS(C:C,A:A,A1,B:B,B1)
でもいいかもしれません。
 
ただしCOUNTIFSの場合はだめです。
COUNTIFS(A:A,A1,B:B,B1)のような列全体指定は避けること。
COUNTIFS(A$1:A$1000,A1,B$1:B$1000,B1)のように限定しましょう。

投稿日時: 17/07/16 17:23:56
投稿者: タコタコ

有り難うございます❗んなっとさんの言ったSUMIFS でうまくいきました❗