2/16/2021

Excel。日付が入力されているセルがいくつあるのか、算出するにはどうしたらいいの?【COUNT】

Excel。日付が入力されているセルがいくつあるのか、算出するにはどうしたらいいの?

<COUNT関数・COUNTIF関数>

簡単に処理できると思っていたら、意外とできなくて困るケースがExcelには、ちょこちょこあります。


例えば、次のような提出状況を確認する表があります。


やりたいことは、C列の提出日に日付が入力されている件数をF1に算出したいのと、まだ日付が入力されていない件数も算出したいわけです。


実は、簡単に算出することができるのですが、難しく考えてしまう人が多いようです。


難しく考えてしまう人は、「どうやったら日付を数えることができるのか?」と悩んでしまうようです。

今回のデータのように、2021年1月に収まっていれば、2021年1月だったらと考えるようです。

しかしながら、実際は、COUNTIF関数とかCOUNTIFS関数などはつかいません。

COUNTA関数でもありませんね。

COUNTA関数は、セル内にデータがあれば、カウントしてしまいます。


考え方としてですが、Excelでは、どうやって日付になっているのかを、思い浮かべれば、どの関数を使えばいいのか、見えてくると思います。


そう、日付は、シリアル値をつかっていて、表示形式をつかって、日付で表示しているだけです。


つまり、数値な訳です。


C列の表示形式を標準に変えてみます。


こうなれば、F1で使用する関数を見つけることができたはずです。

数値を数える関数である、「COUNT関数」でF1の件数を算出することができます。

オートSUMボタンの、「数値の個数」を使ってもOKですね。


F1の数式は、

=COUNT(C2:C11)


ここのポイントは、日付は数値と気づけるかどうかですね。


次は未提出の件数を数えます。


COUNTA関数をつかって、全体の件数を算出して、先程算出した、提出済みの件数を減算すれば、算出できますが、列の中から、文字が入力されているセルの件数はどのようにしたら、いいのでしょうか?


例えば、すべて「未提出」という文字で統一していれば、COUNTIF関数をつかって、条件を「未提出」とすればいいわけですが、今回の表は「今週中」や「来月予定」というように、備考のような使い方をされています。


本来ならば、このような使い方はよくないわけですね。

できれば、備考の列をつくって、そちらに入力してほしいわけです。


着目するポイントは、「文字が色々入力されている」ということです。

それと、数値は数えたくないわけです。


それを踏まえた数式をF2に作っていきます。


使う関数は、「COUNTIF関数」です。


F2をクリックして、COUNTIF関数ダイアログボックスを表示します。


範囲には、C2:C11 と設定します。

検索条件には、「”*”」(アスタリスクをダブルコーテーションで挟みます)。


こうすることで、「文字が色々入力されている」という条件になります。


ダブルコーテーションで、ワイルドカードの「*」(アスタリスク)をつかうことで、数値は除外されます。

あとは、OKボタンをクリックします。


意外と現場で使っている資料には、件数を算出するものが結構あるようです。

Excelには、ケースバイケースに対応するように様々な数える関数がありますので、色々確認してみるといいかもしれませんね。