• ベストアンサー

Excelで日付による個数カウント

過去の質問を検索しても見つけることができなかったので教えてください。 Excelである日からある日までの個数をカウントしたいのですが何かよい方法はありますか?できるだけ簡単な方法が良いのですが。 やりたいこと) 列A 列B A  1/5 B 1/4 A 1/6 B 1/5 A 1/5 B 1/7 B 1/8 B 1/6 たとえば上記のような表があるとして列Bの1/5~1/7の個数を別のセルに表示したいのです。最終的には列Aが“B”かつ1/5~1/7の個数を別のセルに表示したいのです。 回答をお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.3

No.1です。 >この場合は2005/1/5とか2005/1/7をC1,C2に入力してその範囲を調べたいのですが・・・ =SUMPRODUCT((A1:A8="B")*(B1:B8>=C1)*(B1:B8<=C2)) となります。 さらに、C3に「B」と入力しておいて、 =SUMPRODUCT((A1:A8=C3)*(B1:B8>=C1)*(B1:B8<=C2)) ということも出来ます。

-_-y
質問者

お礼

ありがとうございます。助かりました。 さらに・・・の方もやりたかったことなので参考になりました。

その他の回答 (2)

  • flw
  • ベストアンサー率28% (30/105)
回答No.2

追加質問の件についておじゃま致します。 その場合 =SUMPRODUCT((A1:A8="B")*(B1:B8>=C1)*(B1:B8<=C2)) のように、「日付*1」の部分を「C1」「C2」に変えればOKですよ。

-_-y
質問者

お礼

ありがとうございました。助かりました。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 日付だけの条件なら、 (1/5以上の個数)-(1/7より後の日付の個数) で出ます。 数式だと、 =COUNTIF(B:B,">=2005/1/5")-COUNTIF(B:B,">2005/1/7") となります。 さらにA列の条件も付ける場合は、 =SUMPRODUCT((A1:A8="B")*(B1:B8>="2005/1/5"*1)*(B1:B8<="2005/1/7"*1)) となります。 SUMPRODUCT関数は、「B:B」のような列全体の指定は出来ないので、「B1:B8」のように範囲を指定して下さい。 なお、関数以外では、ピボットテーブルやオートフィルタなどの方法もあるでしょう。

-_-y
質問者

お礼

ありがとうございました。 SUMPRODUCTとか使ったことなかったので助かりました。 さらに、追加で質問したいのですが、範囲を別のセルに入力して個数を調べる場合はどうしたらよいのでしょうか。 この場合は2005/1/5とか2005/1/7をC1,C2に入力してその範囲を調べたいのですが・・・