- ベストアンサー
エクセルのデータを条件を絞って合計を出したいのですが。
エクセルのデータを条件を絞って合計を出したいのですが。 いつもこちらでお世話になってます。 B列に各事業所、 H列に金額 I列に請求開始月(2010年4月、2010年5月という入力) とデータがあり、 それぞれの事業所で、 何月にいくら金額があるかを調べたいのですが、 どのように抽出したら良いでしょうか? また、2010年4月に限っては それ以前(2009年12月など)のデータも合算したいのです。 どうかお知恵を拝借願います 宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
J列に事業所名 K列に請求開始月 を入力するとして =IF(MONTH(K1)=4,SUMPRODUCT(($B$2:$B$50=J1)*($I$2:$I$50<=K1)*($H$2:$H$50)),SUMPRODUCT(($B$2:$B$50=J1)*($I$2:$I$50=K1)*($H$2:$H$50))) MONTH(K1)=4の部分は2010年4月というデータが実際に日付の形式(2010/4/1等)で入っているとしての式ですので文字列でしたらK1="2010年4月"にしてください。
その他の回答 (2)
- MackyNo1
- ベストアンサー率53% (1521/2850)
関数でも表示することは可能ですが、このようなケースではピボットテーブルを使用されることをお勧めします。 ひとまず、以下のような手順でピボットテーブルを作成してみてください。 エクセルのバージョンが示されていませんので、2007の場合で説明すると、挿入タブのピボットテーブルでウィザードを起動し、行ラベルに「請求開始月」列ラベルに「事業所」、Σ値に金額をドラッグしてください(このような質問で、より具体的な回答を期待するならバージョンを明示することは必須です)。 これで基本的なクロス集計ができていると思いますので、ひとまずここまでうまくいくか調べてください。 あと、確認ですが「2010年4月」と入力されているセルを選択すると、数式バーには「2010/4/1」と表示されているのでしょうか? 上記のような設定になっていないと、2010年4月以前のデータを集計するときに数式やピボットテーブルのグループ化機能で対応することができませんので注意が必要です。
お礼
ありがとうございました。 エクセルは2007でした。 出来ました!!
- aloha886i
- ベストアンサー率19% (22/113)
オートフィルターとSubtotaslの組み合わせや ピボットテーブル、 SUMIF または VBAでレコード条件による抽出で配列に格納して計算 これらで対応できます
補足
ありがとうございます。 申し訳ありません、 あまり詳しくないので もし宜しかったら、具体的にどのように処理をすれば良いのか 教えて頂けないでしょうか?
お礼
早速の回答、ありがとうございました。 出来ました!!