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

締切り済みの質問

【エクセル】離れたセルのCOUNTIF関数

こんにちは。
エクセルのCOUNTIF関数についての質問です。
各セルに以下のような数値が入っている表で・・・

 A=10  B=00  C=20   D=30   E=00   F=40   G=50 

AとCとEとGのセルを選択し、0以外のセルの個数を数えるとき
COUNTIF関数で
=COUNTIF(A,C,E,G,"<>0")
という数式を立てたのですが、エラーとなってしまいました。
最終的には
=((COUNTIF(A,"<>0")+(COUNTIF(C,"<>0")+(COUNTIF(E,"<>0")+((COUNTIF(G,"<>0"))
という数式をたてて計算は出来たのですが、もっと簡単(?)な式はあったりするのでしょうか?

ご存知の方がいらっしゃいましたら是非お教え下さい。

投稿日時 - 2009-07-16 15:27:50

QNo.5130271

暇なときに回答ください

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

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

回答(5)

ANo.5

こんばんは

=SUM(A1<>0,C1<>0,E1<>0,G1<>0)
でもできます。
A<>0
の計算結果はTrueかFalseなのですが、
True=1
False=0
と扱われることを利用しています。

ただし、VBAでは
True=-1
となっているように、Excelのシート以外で使った場合には、望むような動作にならないかもしれません。

投稿日時 - 2009-07-16 22:14:21

ANo.4

COUNTIFをもっとよく解説を読むべし。
第1引数は範囲を指定する(出来る)。だからA2:G2が指定できる。
第2引数は条件で">70"なんて例が解説書に必ず載っている。
であれば、0以外であれば、"<>0"が指定できないかやってみたらよい。
=COUNTIF(A2:G2,"<>") は空白で無いセル。0や文字も含まれる。
=COUNTIF(A2:G2,"<>0") は0のセルの数.
CountIFの第2引数は複合条件は指定できないから、文字セルが無い保証があれば、両者を引き算すればよい。
ーー
一般的に2条件以上付きカウントは、2007ではCOUNTIFSそれ以前ではSUMPRODUCT関数で行うのが定石。
本件は
=SUMPRODUCT((A2:G2<>0)*(ISNUMBER(A2:G2))*(A2:G2<>""))

投稿日時 - 2009-07-16 22:10:54

ANo.3

0より大きいなら
=INDEX(FREQUENCY((A1,C1,E1,G1),0),2)
0以外なら
=COUNT(A1,C1,E1,G1)-FREQUENCY((A1,C1,E1,G1),0)
参考まで

投稿日時 - 2009-07-16 18:25:51

=COUNT(A1:G1)-COUNTIF(A1:G1,0)

投稿日時 - 2009-07-16 16:41:31

ANo.1

一例です。
=SUMPRODUCT((A1:G1>0)*(MOD(COLUMN(A1:G1),2)=1))

投稿日時 - 2009-07-16 15:33:32

あなたにオススメの質問