- ベストアンサー
エクセルで複数の条件の合計
昨日入力した質問が消えてしまいましたので、再度投稿させていただきます。 A B C D 1 日付 担当者名 お客 反響 2 5月1日 シバタ 佐藤まりこ 888 3 6月1日 木村 吉田よしこ 888 4 7月1日 あひる 佐々木るり 888 5 7月2日 かば 吉田まさお 888 6 7月3日 シバタ 佐藤まりこ 888 7 7月4日 木村 吉田よしこ 888 8 7月8日 あひる 佐々木るり 888 9 8月1日 かば 吉田まさお 888 上記のような表があり、例えば7/1から7/31までのシバタさんのお客が何人いるのかを知りたいのですが、関数のDSUM(A1:A9,"シバタ",countA(C2:C9))と入れると#VALUE!と出てしまいます。 どなたかご存知の方がいたら教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
◆7/1から7/31までのシバタさんのお客が何人いるか ★同じお客さまもカウントするのであれば =SUMPRODUCT((MONTH(A2:A10)=7)*(B2:B10="シバタ")) ★同じお客さまを重複カウントしないのであれば =COUNT(1/(MATCH("7"&"シバタ"&C2:C10,MONTH(A2:A10)&B2:B10&C2:C10,0)=ROW(A1:A9))) ★この式は「配列数式」です。式を入力後、Ctrl+Shift+Enter をおして、式を確定させてください。 ★確定すると、式の両端に{ }がつきます。
その他の回答 (2)
- may0430
- ベストアンサー率54% (57/104)
こんにちは。 ※重複カウントしない場合の方法がちょっと浮かばないのですが、、、 DSUMではなく、DCOUNTAを使用した方法をば。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー まず、下記のような表を追加する。(検索条件を指定する為の表) A B C D E 11 日付 担当者名 お客 反響 日付 12 >=2007/7/1 シバタ <=2007/7/31 次に、求める数値を導く数式は、 =DCOUNTA($A$1:$D$9,,$A$11:$E$12) ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 1つ目の引数 $A$1:$D$9 … フィールド名を含むデータベース(データが入った表) 3つ目の引数 $A$11:$E$12 … 検索条件を指定する為の表(元のデータベースと同じフィールド名を使用すること) ※2つ目の引数は今回の場合は省略してもOKだとは思うのですが、もし指定するなら、「2」。 (担当者名フィールドの、データベースにおける列の番号) ※検索条件の表の A12:E12の各セルは、「データ→入力規則→リスト」で選択できるように しておくと便利だと思います。 ※日付に不等合記号(<,>,=)を付けた時ですが、書式は自動的に「2007/7/1」の形になるようです。 ご参考まで。
お礼
回答有難うございました。DSUMもDCOUNTAも結構使えそうな関数なので、是非マスターしたいと思います。 こういった表の仕事は多くあると思うので、後で試してみたいと思います。有難うございました。
- imogasi
- ベストアンサー率27% (4737/17069)
DSUMの回答は人気が無い。SUMPRODUCTなどの回答が多い。 クライテリア 担当者名 シバタ をセルの範囲に作る必要があるが、嫌われていると見る。 DSUM関数は =DSUM(データベース範囲,フィールド,クライテリア範囲) です。その約束に質問は反している。フィールドを定数で指定したり、関数で指定したりしているが、前者は本関数は「リスト」(一般的な意味でなく、エクセルの術語)を扱う関数であることをお忘れなく。また後者はこの関数が第3引数に関数を指定できない仕組みです。 正しくは 例データ 日付 担当者名 お客 反響 5月1日 シバタ 佐藤まりこ 1 6月1日 木村 吉田よしこ 2 7月1日 あひる 佐々木るり 3 7月2日 かば 吉田まさお 4 7月3日 シバタ 佐藤まりこ 5 7月4日 木村 吉田よしこ 6 7月8日 あひる 佐々木るり 7 8月1日 かば 吉田まさお 8 クライテリア 上述(F1:F2) 担当者名 シバタ 式 =DSUM(A1:D9,"反響",F1:F2) 反響に””を囲むこと 結果 6 ーーー (1)SUMPRODUCT (2)配列関数 (3)フィルタ (4)ピボットテーブル (5)SUMIF =SUMIF(B2:B9,"シバタ",D2:D9) などの 解決方がある。
お礼
ずいぶん長い回答どうもありがとうございました。今回はSUMPRODUCTを使用しましたが、今後の為にもこちらも試してみたいと思います。有難うございました。
お礼
SUMPRODUCT・・・で出来ました! ここの所これだけですごい時間をかけていたので、とても助かりました。どうもありがとうございました。