• ベストアンサー

エクセルCOUNTIF

___|___ TRUE|1     | TRUE|2 TRUE|3     | TRUE|4 といった具合に(見づらいですが)TRUEとなった ところだけの隣にcountifで数えたいのですが どうすればいいですか? ちなみにTRUEとなっているところは、 if(条件,"TRUE","") としたところです。

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

  • ベストアンサー
  • NNAQ
  • ベストアンサー率56% (104/184)
回答No.6

> TRUEで成功しないのはなぜですか? TRUE,FALSE は論理値だからです。 "TRUE"のように「"」でかこってしまうと、論理値では無く「TRUEという文字列」になってしまいます。 試しに =IF(条件,true,"") と、 「"」を付けずに小文字で入力してみて下さい。 自動的に大文字TRUEに変換されて、セルの中央に配置されます。 =IF(条件,"TRUE","") だと、左詰めになってるはずです。   それで、 =COUNTIF(範囲,"TRUE") =COUNTIF(範囲,TRUE) この式は2つとも「論理値のTRUE」を検索して、「文字列のTRUE」は検索されないようです。 ですので、解決策は 元のIF文を、 =IF(条件,TRUE,"") 「"」を付けないようにすれば、 #3,#4の式でOKのはずです。 =IF(条件,"TRUE","")  この式のままでやるなら =IF(A1="TRUE",COUNTA($A$1:A1)-COUNTIF($A$1:A1,""),"") と、しなければならないでしょう。

koton_
質問者

お礼

ありがとうございます。 解決しました。

その他の回答 (5)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

#4です。 >MAX関数を使わない方法はありませんか 最初(データ)行から、今問題にしている行までのTRUEの数を作業列なしに出す(数える)のは、配列数式(ご存知?)というものを使わないとできないと思うので、なおさら理解が難しくなりますよ。 質問でのTRUEという値を出す作業列を作る(使う)のは、余分な列がいるわけですから、使わなければベターでしょう。 MAX関数なんて、和・差についで平均・最大・最小はよく使われる関数ですよ。なぜ使わない法を考えるのか。 ただOKWAVEの回答は、「私は!」こういう方法もありますと、言う意味で上げているのです。取捨は質問者の好きなのを選んでいるようですが。

koton_
質問者

補足

今回の場合COUNTIFを使いたいのです。 申し訳ありません。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

もし条件該当行に連番を振りたいのなら、OKWAVEで、自称「imogasi方式」と称して、私が多数回答している、質問に沢山例がありますが、 B2に=IF(A2="a",MAX($B$1:B1)+1,"") と入れて下へ式を複写する A2:B11 A列  B列 a 1 b c a 2 s d a 3 a 4 s d コツは第2行目からデータを入力開始しB1はスペースまたは文字列にして、数字を入れないようシートの表を設計することです。 また絶対番地にしている$のつける位置に注意ください。

koton_
質問者

補足

ありがとうございます。 しかしMAX関数を使わない方法はありませんか?

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

こういうことかな? A1以下にTRUEがあるものとします。 絶対参照と相対参照に注意! =IF(A1,COUNTIF($A$1:A1,TRUE),"")

koton_
質問者

補足

IF(A1,COUNTIF($A$1:A1,TRUE),"") A1="TRUE"としないと#VALUEとなりました。 ありがとうございます。

  • masa_019
  • ベストアンサー率61% (121/197)
回答No.2

TRUEがA1から合ったとして、B1に =IF(A1=TRUE,COUNTIF($A$1:A1,TRUE),"") と入力して、下にコピーする。 といったことでしょうか。

koton_
質問者

補足

=IF(A1="TRUE",COUNTIF($A$1:A1,"TRUE"),"") のようにしてみたのですが、 TRUEというのがカウントされませんでした。 表のTRUEを例えば"出席"にした場合 =IF(A1="出席",COUNTIF($A$1:A1,"出席"),"") にしてみたら、うまくカウントされました。 TRUEで成功しないのはなぜですか?

  • edomin
  • ベストアンサー率32% (327/1003)
回答No.1

質問の内容がいまいちわかりませんが・・・ (そのまま、「countif」の使い方の説明になってしまう。) countifの使い方は、 =COUNTIF(範囲,"条件") です。なので「C5」から「C25」までに「TRUE」が入っているなら =COUNTIF(C5:C25,"TRUE") です。

関連するQ&A

  • エクセルIFの返り値

    エクセルでまずIF関数(=IF(条件,"TRUE","")でTRUEと なった、ところだけをCOUNTIFで数えたいのですが どうすればいいですか?

  • エクセルでIFとCOUNTIFを組み合わせるようなことは可能でしょうか

    エクセルでIFとCOUNTIFを組み合わせるようなことは可能でしょうか? 現在エクセルを用いてデータの整理を行っているのですが、 今自分がやりたいことをどうすれば行えるのか分からず悩んでおります。 具体的には A B 1 1 1 3 2 2 2 1 1 2 1 1 といった風にデータがあったときに、Aが"1"の場合のみ Bの列をCOUNTIFを使ってCOUNTIF(B2:B7,"1"), COUNTIF(B2:B7,"2")…と求めたいと考えております。 つまりAの条件に従ってBの列をカウントするかどうかを判定したいのですが、 インターネットで調べたところIF関数ではこのような使い方ができません。 どなたかご存知の方いらっしゃいましたら教えていただけると幸いです。

  • 2007EXCEL COUNTIF 複合

    countifを使用し、     A 1 ●●数×× 2 ●●語××     B 1 =if(countif(A1,"*数*"),"数学",if(countif(A2,"*語*"),"語学",)) という式で"数"が含まれていれば数学、"語"が含まれていれば語学、とB列に表示させるようにしています。 そこで、 A3に●●数××語とある際、"数学""語学"両方表示させるには どうしたら良いでしょう? countifではできないのでしょうか??

  • エクセル COUNTIF・・・

    こんばんは。自分なりに調べては見たんですが・・・。例)ある範囲内に『りんご・いちご・りんご・レモン・いちご』とあった場合の”リンゴといちご”の個数の計を出したいのですが・・?自分はCOUNTIF範囲、”りんご”+COUNTIF範囲、”いちご”ってふたつの式を足して、条件の文字を含む合計が出ました。しかし、上司より『COUNTIF範囲、りんご、いちご』ってひとつにできないのか?って言われ困ってます。 よろしくお願いします

  • EXCEL countif について

    countif 関数で,複数の条件を設定するにはどうすればよいのですか。例えば,「50点以上70点以下は何人いる。」等です。よろしくお願いします。

  • エクセル関数 CountIf について教えてください

      CountIf 関数を使って、ある範囲にある数値の個数を数える方法(条件式の書き方)を教えてください。 例えば 3以上 8以下 (>3、<8)の数値の個数を調べる条件式。 =COUNTIF(F1:F15,"???")  の???部分を教えてください。

  • EXCELのIF、OR、COUNTIF関数について

    EXCEL2010にて =IF(OR(COUNTIF(K20,"*○○町*"),COUNTIF(K20,"*●●町*"),COUNTIF(K20,"*◎◎町*")),"○○区",IF(OR(COUNTIF(K20,"*△△町*"),COUNTIF(K20,"*▲▲町*"),COUNTIF(K20,"*▽▽町*")),"▼▼区",IF(OR(COUNTIF(・・・・・・・・・・,"error"))))))) という感じで判別しているのですが このまま書いていると8000字ほどの文字数制限にかかってしまいます。 もっと短くかける書き方、関数などありますでしょうか? よろしければ詳しい方回答お願いします。m(_ _)m

  • excel countif関数について

    いつもお世話になっております。 Excelの関数にcountif 関数がありますが、 複数条件を設定することは可能でしょうか。 A B 1  年度 等級 2  2022 3 3  2022 4 4  2023 3 2022年の等級3の個数 1(=countif) 2023年の等級3の個数 1(=countif)

  • COUNTIFの使い方

    現在、COUNTIF関数を使ってC列に数字が入ったときにB列に1,2,3・・・と項番を表示するようにしています(関数(1))。 関数(1) B4=IF($C4<=0,"",COUNTIF($C$4:$C4,">0")) この関数を応用して、C列に数字は入っていて、さらにN列またはO列に数字がが入ったときにB列に1,2,3・・・と項番を表示するようにしたいのですがうまくいきません(関数(2))。 関数(2) B4=IF(OR($N4<>"",$O4<>""),IF($C4<=0,"",COUNTIF($C$4:$C4,">0")),"") 恐らく、COUNTIF関数のところがおかしいとは思うのですが、よくわかりません。 どなたかご教授下さい。よろしくお願いします。

  • CountIFで

    COUNTIFで 検索条件を「1」とするときは 「=COUNTIF(B4:B50,1)」ですよね? 検索条件を「0または1」とするときは 式にはどのように入力したらよいのでしょうか? また勉強。 検索条件を「1以上」とするときは 式にはどのように入力したらよいのでしょうか? よろしくお願いいたします。

専門家に質問してみよう