- ベストアンサー
EXCEL関数 COUNT
数値を数える関数 COUNT で疑問があります。 =COUNT(1,FALS,"吉")では、1 が返され、 =COUNT(1,FALSE,"吉") では 2 が返されます。FALSE は数値ではないのに、どうして?と、 はまってしまいました。アドバイスお待ちしています。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
()にいれるパラメータは、 「数値と見なすもの」と「数値と見なさないもの」の両方を入れる事ができます。 従って、 最初の例では、数値と見なすものが1個 次の例では、数値と見なすものが2個 入っているためです。 >FALSE は数値ではないのに、どうして? 直接指定とセル範囲指定の場合は、「数値と見なさないもの」の定義が異なります。
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
FALSE,TRUEが計算の中で使えるということと、間接的には(一致させておいたほうか良いと思うから)理由になっても、直接的な理由では無いと思う。 下記の、式での=10>2のTRUEの例を説明できるでしょうか。 それよりも、 COUNTは関数の説明(書)で、直接引数としてデータを指定する場合(注)、「論理値、日付、ヌル」は計算の対象となります、とあります。 そういう仕様にしたというのが理由でしょう。 (注) テストでE1:E4に "12" 2006/11/2 TRUE 1 =COUNT(E1:E5)は2です。 3番目のTRUEがカウントされていません。式=10>2 の結果だから です。 =COUNT("12",2006/11/2,TRUE,1) は4になりました。 =COUNT("12",2006/11/2,TRUE,1,)は5 =COUNT("12",2006/11/2,TRUE,,1)も5 解説書の説明と一致します。
- zap35
- ベストアンサー率44% (1383/3079)
EXCELではfalseは論理値0、TRUEは論理値1に割り当てられます。 COUNT 関数では、数値、日付、数値を表す文字列がカウントの対象となりますが、論理値も数値と見なされますので、このような結果になります 試しにA1セルにFALSE(またはTRUE)と入力して、B1セルに「=A1+1」と入れてみるとちゃんと計算されますよ
お礼
早速の回答ありがとうございます。説明されれば納得ですが、思いつきませんでした。助かりました。
- periodayo
- ベストアンサー率20% (64/315)
EXCELではFALSEとTRUEは論理値としてあらわされます。 ちなみにfalseは0、TRUEは1です。 ですのでFALSEの場合数値と認識されます =FALSE+TRUEで計算すると0+1で1といった 結果が返されます。
お礼
早速の回答ありがとうございます。説明されれば納得ですが、思いつきませんでした。助かりました。
お礼
早速の回答ありがとうございます。「直接指定とセル範囲指定の場合は、「数値と見なさないもの」の定義が異なります。」というのは、詳しく教えていただくことはできますでしょうか?