みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルで「FALSE」以外のセルをカウント

エクセルでうまく計算できなくて困っています。
どうか知恵を貸して下さい…。

  A  B
1 あ FALSE
2 あ FALSE
3 い FALSE
4 0 FALSE
5 0 FALSE

AとB列に同じような計算式が入っており、
その結果が表示されています。
(例えば…、A1に「=Sheet2!C1+Sheet2!C2」など)

この状態で、A1:B5の範囲で0とFALSE以外の数をカウントするには
どうすればよろしいのでしょうか?

COUNTIF関数などを使ってもうまくいきません…。

投稿日時 - 2008-04-24 02:35:09

QNo.3971657

困ってます

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

セルには完全にFALSEと表示されているのが前提で、
提示された例のようなシートのデータならば以下の数式で解決できます。

=COUNTA(A1:B5)-COUNTIF(A1:B5,"FALSE")

COUNTAでデータの入っているセルの総数を数え、
そこからCOUNTIFでFALSEの入っているセルの総数を引く関数です。

これならFALSE以外のセルがカウント可能だと思います。

投稿日時 - 2008-04-24 05:37:40

お礼

早速のご返答ありがとうございます!

0もカウントしない、が条件ですので、
=COUNTA(A1:B5)-COUNTIF(A1:B5,"FALSE")-COUNTIF(A1:A5,"0")
でやってみたらうまくいきました。

COUNTAも一緒に組み合わせて使うんですね。

助かりました!

投稿日時 - 2008-04-24 06:35:18

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

こんにちは。

私は、こういうことは素人で詳しくないのですが、

文字列を探すなら、

=COUNTIF(A1:B5,"*")

ということだと思います。

厳密に、数値0とブーリアン値もしくは、FALSE を除くのでしたら、

=SUMPRODUCT(COUNTIF(A1:B5,{"<>",FALSE,0}),{1,-1,-1})

というスタイルになるのかな。

ただ、基本的に、ブーリアン値のFALSEを、表計算上で、生のままで出すのはうまくないような気がします。IF構文でも、0などに置き換えればよいと思います。数式が、不自然な形のままになっているように思います。出来れば、FALSEも、0も、"" で出力すれば、文字列のみになるので取り扱いがしやすいように思います。

また、
=Sheet2!C1+Sheet2!C2
として、Sheet2!C1等に文字列が入れば、数値の計算式になっていますから、#VALUE! エラーが発生すると思います。

投稿日時 - 2008-04-24 07:56:05

お礼

なるほど。勉強になります。
ありがとうございました。

投稿日時 - 2008-04-25 02:11:53

あなたにオススメの質問