[[20220201144108]] 『COUNTIF関数について』(まあ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『COUNTIF関数について』(まあ)

 セルの値を関数で得られる値でカウントするような場合はCOUNTIF関数は使えないのでしょうか?

 例えば、以下の「A1:A3」で文字数が3以上のセル{AAA,CCC}をカウントするようなケースです。
 =COUNTIF(A1:A3,LEN(A1:A3)>2) だとNGでした。COUNTIF関数以外での代替方法はわかっています。
 =SUMPRODUCT((LEN(A1:A3)>2)*1)

 上のLEN関数を使ったのはあくまで例で、こういうケースではCOUNTIF関数で「可能/不可能」を教えて欲しいです。
 もし可能なら、数式を教えれば幸いです。

   A
1 AAA
2 BB
3 CCC

< 使用 Excel:Excel2007、使用 OS:Windows10 >


 データが文字列なら

 =COUNTIF(A1:A3,"???*")

 以上
(笑) 2022/02/01(火) 14:53

 笑様、ありがとうございます。

 質問の仕方が悪かったです。
 「COUNTIF関数の第2引数に関数を使った式を使えるか」という事を教えて欲しいです。
(まあ) 2022/02/01(火) 15:11

 質問の意図がよくわかりませんけど
 =COUNTIF(A1:A3,"???*") の第2引数に関数を使って

 =COUNTIF(A1:A3,REPT("?",3)&"*")

 これならいいってこと?
 ※データは文字列限定

 以上
(笑) 2022/02/01(火) 15:47

 >「COUNTIF関数の第2引数に関数を使った式を使えるか」
 使えますが、質問者さんが想定している使い方はできません。

 COUNTIF関数の利用法は、COUNTIF(範囲,検索条件) です。
 検索条件が単独の数値や文字列になるように式をつくれば大丈夫ですが、
 >=COUNTIF(A1:A3,LEN(A1:A3)>2)  では、
 検索条件が配列になるので、この場合は対応してないようです。

 むしろ、実現したいことは、
 =COUNTIF(LEN(A1:A3),">2")
  となると思われますが、
 COUNTIF関数の第1引数がセル範囲しか受け付けないのでこれも対応してません
(´・ω・`) 2022/02/01(火) 16:06

 >質問者さんが想定している使い方
 とは具体的にどういうことですか?

 LEN関数はあくまで例であって、それにこだわっているわけではないようですけど・・・

 以上、確認だけ
(笑) 2022/02/01(火) 16:13

 >=COUNTIF(A1:A3,LEN(A1:A3)>2)
         ↑  
 あくまでわたしの想像ですが、
 条件式の方にカウントする対象範囲が含まれるような使い方かなと
(´・ω・`) 2022/02/01(火) 16:22

 笑様、´・ω・`様、ありがとうございます。

 COUNTIF関数の第2引数に「REPT("?",3)&"*"」のような結果としてリテラルが返るのではなく、
「LEN(A1:A3)>2」で{True,False,True}のように対象セルの数だけ真偽配列が返って、
その合計みたいな事はできないのかな、と思いました。

 COUNTIF関数の仕様上、無理なら無理ということを確認したかったのです。

 ´・ω・`様の説明で、納得しました。
 今後、こういうケースでは他の方法を考えます。
(まあ) 2022/02/01(火) 16:27

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.