- ベストアンサー
COUNTIFで空白表示以外のセル数を取得
- エクセル2010で、セル範囲A1:A10に入っている数式の結果がすべて文字列として返されます。
- セル範囲A1:A10には、空白に表示されたセルも含まれています。
- COUNTIF関数を使用して空白表示以外のセルの数を求めることはできないようです。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
>セル範囲A1:A10にはすべて数式が入っています。 >計算の結果はすべて文字列が返ります。 >これを、COUNTIFで求めることはできないでしょうか? 1文字以上の文字列が代入されたセルを検索するのですよね? 下記のようなワイルドカードを使ってください。 =COUNTIF($A$1:$A$10,"?*") ワイルドカードの?は何らかの1文字を意味し、*は文字数を規定しません。 =COUNTA($A$1:$A$10)は「=""」も文字列としてカウントします。(数式があるからでは無いようです)
その他の回答 (3)
- quindecillion
- ベストアンサー率48% (87/180)
数式が入っているということは空白ではありません。 何も無い用に見えているだけで文字は入っています。その為文字を含めてカウントするcountaなどではカウントされてしまいます。 出来ない式の訂正で申し訳ないですが、 >=COUNTIF($A$1:$A$10,"<>""") こちらではなく =COUNTIF(A1:A10, "<>") =COUNTIF(A1:A10, "<>"&"") の方が数式としては正しいのではないでしょうか。 数式の計算結果が0であれば対応が簡単ですが、文字となると =COUNTA(A1:A10)-COUNTIF(A1:A10,"") という方法などでしょうか。 計算結果を0にすれば簡単ですのでA1~A10の式をつついて =IF(B1&C1="",0,(B1&C1)) などとしておいて値が無ければ数字の「0」を返すようにしてください。 *注意:0であって"0"ではありません。"0"にしたらどうなるかご確認ください。 そしてカウントしたい場所で =COUNTIF(A1:A10,"<>0") という形にしてください こうすれば空白を返すのでは無く数字の「0」を返すので「0」以外をカウントしてくれます。”0”は文字の0となります。 数字の0の非表示はオプションから出来ます。
お礼
quindecillionさん、訂正ありがとうございます。
- chayamati
- ベストアンサー率41% (260/624)
>セル範囲A1:A10で空白に表示されたセルの数は =COUNTBLANK($A$1:$A$10) で求められます。 ★空白でないセルの数を求める場合 総数から空白のセル数を引けば =10-COUNTBLANK($A$1:$A$10) または =COUNTA($A$1:$A$10)ーCOUNTBLANK($A$1:$A$10) のめりこんでいますね、こういう時はお茶にして一息入れて下さい。
お礼
chayamatiさん、おはようございます。 >総数から空白のセル数を引けば はい、その方法なら存じています。 ありがとうございました。
- msMike
- ベストアンサー率20% (364/1804)
=COUNTA(A1:A10)-COUNTIF(A1:A10,"")
お礼
msMikeさん、おはようございます。 COUNTIF(A1:A10,"")はCOUNTBLANK($A$1:$A$10)と同じことですね。 ありがとうございました。
お礼
bunjiiさん、今回もありがとうございます。 =COUNTIF($A$1:$A$10,"?*") なんと、こんなことができるのですね! とても助かりました。ありがとうございます。