COUNTIFS関数の日付や期間でカウントされず0になる原因

ここでは、COUNTIFS関数で日付や期間の条件がうまくカウントされないで0になる原因と対応方法について解説します。

 

「日付や期間がカウントされないで0になる」状態の具体例の確認と、数式のどこが悪いのか、正しい数式の書き方の説明です。

1.まずはやりたいことを確認

まずは、やりたいことを例を含めて確認します。

 

1-1.「期間」や「日付」の条件で正しくカウントしたい

やりたいことは、COUNTIF関数の「『期間』や『日付』の条件で正しくカウントする」です。

 

数式を正しく入れたつもりなのにうまくいかない、0になるという状態を解消します。

 

1-2.例で確認

ひとつ例を見てみましょう。

例では、B列に入った日付に対して「4月1日から4月10日」の条件にあてはまるセルをカウントしようとしています。

 

ちなみに、セルE6に入れた数式は、

=COUNTIFS($B$3:$B$17,">=D4",$B$3:$B$17,"<=E4")

です。

 

しかし、結果は「0」が返ってきました。本当は5件あるはずなのに、です。

 

なお、同じ現象はCOUNTIF関数でも起こります。

2.原因と数式の書き方を間違う要因

次に、正しくカウントできない原因と、数式の書き方を間違ってしまう要因を見てみましょう。

 

2-1.正しくカウントできない原因は

正しくカウントできない原因は、「検索条件の書き方(例の『">=D4"』や『"<=E4"』の部分)を間違っている」ことです。

この書き方だと「4月1日以上」という意味ではではなく、「『>=D4』という文字列がないか?」という意味になってしまうのです。

 

「条件値にセル番号を入れる」場合には、別の書き方が必要です。

 

2-2.数式の書き方を間違う要因

このような形で数式の書き方を間違う要因は、関数の引数ダイアログにあります。

 

なぜなら「ダイアログで検索条件の所に『>=D4』と入力しOKボタンを押すと、自動で『">=D4"』に変わってしまうから」です。

 

では実際にやってみましょう。

 

「>=D4」でOKボタンを押すと…

自動で「">=D4"」に変わりましたね。。。

 

 これでは間違ってしまうのも無理ないです。

3.正しくカウントできる数式の書き方

COUNTIF関数やCOUNTIFS関数で「以上」や「以下」などとする場合、数式の形は次のようにします。

 

【COUNTIF関数の場合】

=COUNTIF(範囲,"比較演算子"&セル番号)

【COUNTIFS関数の場合】

=COUNTIF(範囲,"比較演算子"&セル番号,範囲,"比較演算子"&セル番号)

比較演算子とは、「>」や「>=」といった記号のことです。

 

ポイントは、次の通りです。

ポイント
  • 比較演算子のみを「"」で囲む
  • 比較演算子の後に「&」を入れる
  • &の後に「セル番号」を入れる

ちなみに、先ほどの例でいうと正しい数式は、

=COUNTIFS($B$3:$B$17,">="&D4,$B$3:$B$17,"<="&E4)

となります。

 

これで正しくカウントがされます。

 

なお、数式の中に日付を直接入力する形だと、数式は、

=COUNTIFS($B$3:$B$17,">=4/1",$B$3:$B$17,"<=4/10")

となり、全部を「"」で囲ってよくなっています。

 

条件値がセル参照の場合と数式内への直接入力の場合で異なる、ということに注意してください。

 

参考になれば幸いです。


口コミ・評判のいいExcel本の紹介】


なお、COUNTIFS関数を使いこなすためのポイントを載せたその他のページへは、以下のリンクをクリックしてください。

  • COUNTIFS関数 使いこなすためのポイントはこちら
Top