- 締切済み
一覧表から月ごとに集計する
関数の使い方が、いま一つわからないのですが、次のようなエリア・地域・受注月日・完了月日の表があるとしてデータは手入力でいれます。エリアごとや地域ごとの受注月の件数と完了月の件数を出す方法は、どうすればいいのか教えてください A B C D 1 エリア 地域 受注月日 完了月日 2 関東 千葉 4/2 4/5 3 東北 山形 4/2 4/7 関東の受注 4月 ○件 山形の完了 4月 ○件 といったように、別シートに集計したいのですがどうすればいいでしょうか
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- CMLT
- ベストアンサー率40% (143/357)
まず、複数条件に関してはEXCEL2007では AVERAGEIFS COUNTIFS SUMIFS といった新関数が用意されています。 2003以前ではSUMPRODUCT等、配列関数等の使用により処理が重くなります。 EXCEL2007での新関数を利用した方法例を紹介します。 前提として受注月日や完了月日は文字列でなく日付データが入っているものとします。 一覧表がSheet1にあると仮定して、 集計する月は後から簡単に変えられるように、別シートの、 A1に 4/1 と入力。 A2に =DATE(YEAR(A1),MONTH(A1)+1,1) これらは白文字にして隠しても構いません。 関東の受注は =COUNTIFS(Sheet1!A:A,"関東",Sheet1!C:C,">="&$A$1,Sheet1!C:C,"<"&$B$1) 山形の完了は =COUNTIFS(Sheet1!B:B,"山形",Sheet1!D:D,">="&$A$1,Sheet1!D:D,"<"&$B$1) 絶対参照の$は無くても構いません。「エリア」や「地域」、「関東」や「山形」などを引数として関数に組み込んで列指定の自動化などもできますが、とりあえずは… 集計結果の数値に単位(件)をつけたければ、表示形式を 0_ "件" とします。 EXCEL2007の新関数なので、2003以前ならSUMPRODUCT等を使うことになります。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 色々方法はあると思いますが・・・ 一例です。 表に4月しかないのであれば、 関東の受注セル =SUMPRODUCT((A2:A4="関東")*(C2:C4<>"")) 山形の完了セルも同じように =SUMPRODUCT((B2:B4="山形")*(E2:E4<>"")) でOKです。 但し日付の列に色々な月が混ざっていると一工夫しなくてはならないと思います。 その方法として↓の画像のように、D・F列に作業列を挿入して D2セル=MONTH(C2) F2セル=MONTH(E2) としてオートフィルでコピーし、 それぞれの月を表示させておきます(セルの書式設定で表示形式は標準に) そして関東の受注セル =SUMPRODUCT((A2:A4="関東")*(D2:D4=4)) とすれば良いのではないかと思います。 尚、数式内の "関東" 等は 関東が表示されているセル番地(A2)を 指定してもOKです。 どうも長々と失礼しました。 以上、参考になれば幸いです。m(__)m
お礼
画像付きの回答ありがとうございます。1年間の集計を、エリア(地方分け)地域(県単位)ごとの受注、完了として月単位で進捗管理をしたいと思ったのが、発端でした。表は至ってシンプルなんですが、集計となると、ちょっと自分ではわからなかったので質問しました。tom04さんの回答を参考にやってみます。ありがとうございました。
お礼
回答どうもありがとうございました。 丁寧に教えていただいたのですが当方、あいにくEXCEL2003なもので COUNTIFSはつかえません。でも、SUMPRODUCTを使うことやMONTHを使う方法を教えていただきありがたく思っています。 とても参考になりました。ありがとうございました