• 締切済み

EXCELでCountif内に2つ以上の列を入れる場合

0 A、B、C、D 1 a、1、h、2 2 b、0、i、1 3 c、1、j、2 4 d、0、k、1 5 e、1、l、0 6 f、0、m、2 7 g、1、n、0 上の用にaからnチームまでの得点表があります。 1点を得点したチーム数を計算するときに countif(B:B,"1">+countif(D:D,"1") を使うと実際にでるのですが、Countifを一つだけ使用して範囲の部分をB列からD列という形ではなくB列のみとD列のみの中から探すように指定するにはどうしたらいいのでしょうか? countif(B:D,"1")とやったのですが、こうするとB,D列だけでなくC列もカウントされてしまいます。今回はC列に数字がないので問題内のですが、チーム名で1の入るチームがあると計算がくるってしまうと思います。B列のみD列のみと指定する仕方を教えてください PS 一列にすべてを書けば問題ないのですが、列を分けることでスクロールせずに見ることができ見やすいと思い、複数列にしました。

みんなの回答

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

#4のものです。補足していただいた件に関して >でも1以外の物はカウントされませんでした。 それは当然です。B1:B4:D1:D4と書いても、B1:D4と書いても同じのようです。"=1"は””で囲んでいますが「1」という「数値」のセルをカウントするもので、「12」は1ではありませんからカウントしないのだと思います。 1という数字を含むものをカウントさせるのはまた別です。 B1:B4:D1:D4の表現が「エラーにならない」のがまたB1:D4と書くのと同じなのが不思議ですが、済みません#2は忘れてください。 (2)ついでにB1:B4とD1:D4を併せた範囲に「名前」data1をつけて=countif(data1,"=1")として見ましたが エラーでした。報告します。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

#3のものです。「B1:B4:D1:D4」では、C列の中の該当値の分もカウントしてしまうことがわかりました。テストデータに偏りがあり、誤解してしまいました。済みませんでした。

canobus
質問者

補足

でも1以外の物はカウントされませんでした。 1 はカウントしますが 12 のように1を含んでるけど1でない物はカウントしませんでした。 目的は果たしますが、C列もカウントしているという点ではうまくいかなかったといえます。

全文を見る
すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

私自身半信半疑ですが、次のようにしたら出来ませんか。 本でも読んだことはないのですが。皆さんもやって見てください。 テストデータとして、A1:D4に (A列)(B列)(C列)(D列) a 2 r 1 b 1 s 2 c 3 t 3 d 1 u 1 をつくる。 例えばD5に=COUNTIF(B1:B4:D1:D4,"=1")といれる。 B列指定とD列指定を,でなく:で繋ぐのがポイントです。色々やっている内に上手く行きそうなんですが。 値を文字列aにして、行数を10にしましたが、正しく カウントしてくれました。

canobus
質問者

補足

3列目のrstuの値をどれか一つを1に変えた場合 =COUNTIF(B1:B4:D1:D4,"=1") だと5という値を返してきました。 よってC列内の1もカウントされたみたいです。 1だと入りますが、チーム名がr1など単独の1でなかった場合はカウントされなかったです。

全文を見る
すると、全ての回答が全文表示されます。
noname#8758
noname#8758
回答No.2

どうしてもCOUNTIF関数を使いたいのですか? SUMIFであれば一度に出ます 本来の使い方とは多少ずれるかも知れませんが  A、B、C、D 1 a、1、h、2 2 b、0、i、1 3 c、1、j、2 4 d、0、k、1 5 e、1、l、0 6 f、0、m、2 7 g、1、n、0 例えばA8に1のみの合計を出したいので有れば =SUM(A1:D7,"1",A1:D7)で範囲内の1の合計を出してくれます 質問の内容から外れていたらすいません

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

countif関数の列の範囲指定は連続していないとできないと思います。 つまりB列C列D列なら可能ですがC列のみを除くことはできません。 countifを二つつかうと何か問題がありますか? そうであればまた考えますが。

canobus
質問者

補足

今のところ問題がないのですが、列が100ぐらいに増えると毎回Countifを設定しなければいけないことになり効率的でないと思ったのでCountifの中にすべてを納めれるか気になりました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのCOUNTIFについての質問です

    エクセルに関して質問です COUNTIFがうまく使えず困っているので助けてほしいです。 下記のような表を作成し、別シートでカウント結果を反映させたいのですがうまくいきません    A   B   C  1 11:00 13:00 2:00  2 10:00 15:00 5:00  3 12:00 14:00 2:00 A・B列には数値を、C列には(B列-A列)の数式を入力し書式設定h:mmで表記されるようにしてあります。 別シートでC列の2:00の数をCOUNTIFで数えたのですが帰ってくる数字が明らかに少なく計算が合いません。 このような場合どのように対処すればちゃんとカウントされるのでしょうか? ご回答宜しくお願い致します。

  • エクセルのCOUNTIFについて

    A,B,Cのセル内の数値の個数ををCOUNTIFで求めました。 普通にできたのですが、A,B,Cのセルに関数を入れて、 計算結果をCOUNTIFで求めようとしましたがNGでした。 関数の結果をカウントする方法がありましたらお願いします。

  • エクセル 関数 countif について

    A列、B列に -100~100 を10単位で入力 A列&B列でC列に文字列を生成 D列にcountifでC列の文字列がいくつあるかカウント 10-20の組み合わせが1個 20-10の組み合わせが3個 なのですが、どちらも4個と表示される ほかの組み合わせでは 正しい個数が表示される 何を改善したらよいでしょうか?

  • Excelの関数「COUNTIF」について

    =COUNTIF(A1:B50,"<=○○") ○○のところは指定のセルから引っ張ってくることは不可能なのでしょうか? 例えばC1が100として =COUNTIF(A1:B50,"<=100")   だと、ちゃんとカウントしてくれるんですが =COUNTIF(A1:B50,"<=C1") だと、A1:B50に100以下の数値が何個あっても0になってしまいます。 「""」で囲っているからだと思うんですが、 「""」を外すと、入力した数式は正しくありませんと警告がでます。 どう入力すれば検索条件をセルから引っ張ってくることができるのでしょうか? どなたか分かる方、知恵をお貸し下さい。 よろしくお願いいたします。

  • ExcelのCOUNTIFについて

    Excel2007を使用しています。 COUNTIFについて次のようなことは可能か教えて下さい。 画像は、仲内の麻雀の成績表です。 A~Fさんまでそれぞれ行によって成績をまとめてあります。 そして、D~F列の1,2、3、4という数字は、K列、N列の順位の回数をCOUNTIFにてそれぞれカウントしています。例えばAさんの場合は、1G目は試合なし、2G目で4着をとっているのでG列の4のところに1カウントしています。 同様に、Eさんは、1G目4着、2G目1着なのでD列の1位とG列の4着が1つずつカウントされています。 これは、Aさんの場合 =COUNTIF(I3:N3,1) にてD列の1着の回数をカウントしています。(同様に、E列~G列も末尾の1を2~4にそれぞれしてカウントしています。 で、問題は8行目のFさんなのですが、上と同様にI8~N8をCOUNTIFでカウントすると、本来は2G目の2着のみなので、E列の2着が1つカウントされるだけなのですが、I8~N8を対象範囲としているのでL列の『P』(※ポイントです)の+3.0を誤って3着にカウントしてしまい、F列の3着のところに1つカウントしてしまっています。 説明が長くなってしまいましたが、要は、着順のK列、N列、Q列・・・・と着順のみの列をCOUNTIFでの範囲にしたいのですが可能でしょうか? ※ゲーム数がこの後相当数になりますのでセルをコピーする予定ですので列を1つずつ選択する方法ではなく何か数式で教えて下さい 以上、分かりにくい文で申し訳ありませんがよろしくお願い致します。

  • エクセルのcountif関数について

    二つの列にそれぞれ数値が入っている場合に、クロスしたデータの個数をカウントしたいのですが、どのような式を使えばよいかお教え下さい。 例えばA1~A10に20,30,20、・・・と規則的に入力されていて、B1~B10に1、2、3、1、2、3、・・・とこちらも規則的に入力されている場合で、A列が20でB列が3の場合、クロスした値は2個となるのですが、それをCOUNTIF関数で計算させたいのですが、...何か良い方法はありませんでしょうか。

  • エクセル関数「countif」に関して

    最終的に計算式が【COUNTIF(A1:A40,"1")】になるのを目的としています。 A列には別計算で出力した「1」が2個あります。よって上記の結果は【2】になります。 範囲、条件共に可変するので(B1:B40では"2"を…という感じです)、後々を考え、オートフィルで対応出来たらと思い、indirectを使って何とかできないかなと()内を&でつなぎ、D1※仮定に出力させた上で、【COUNTIF(INDIRECT(D1))】としたところ、引数が少ないエラーが出たので、範囲と検索条件を分離させようと試みましたが、うまく条件をカウントしてくれません。結果が0になります。 検索条件部分の「"1"」の扱いをどのようにすれば条件として認識してくれるのでしょうか? 関数のみでは厳しいでしょうか? 宜しくお願いします。言葉足らずであればご指摘ください。追記します。

  • Excel 関数でcountifの複数条件

    Excelで条件にあった個数をカウントする関数はcountifですが、 複数の条件にあった個数をカウントする場合、countifの式はどうすればよいのでしょうか。 例えば A列の1行から20行で"○"が入っている個数のカウントは =countif(a1:a20,"○")ですが A列の1行から20行で"○"が入っていて、なおかつ B列の1行から20行に"1"が入っている個数のカウントを知りたいです。 =countif(a1:a20,"○")and(b1:b20,"1")ではないですよね。 よろしくご教授願います。

  • この場合の関数を教えてください。IF関数とCOUNTIF関数?

      A      B    C  D  F  G 1 12300 2 9800 3 14500 上記の様な表($a$1:$d$3) がある時、 B1 ◎      D1 △   F1◎     C2◎         F2△ B3△      D3◎ F1 に◎を入れた時に、 もし、A列の値が10000より大きいなら(注)、範囲$a$1:$d$3の◎の数を数え結果をG1に2と表示させたいです。(F2に△と入れたら2と表示) (注) 1行目は、12300(A1)なので1行目はカウントの範囲。 2行目は、9800で10000より小さいのでカウントの範囲から外れる。 3行目は、14500はカウントの範囲。 2行目の◎(C2)はカウントされないようにするには、 G1にどのようなCOUNTIFの関数を入れればよいのでしょうか? いつも教えているので、考えたのですが? =IF(A1>10000,COUNTIF($B$1:$D$3,F1),"0")では、間違いとは気づいたのですが? (A1>10000が間違い)どの様にして良いか解りません。 どなたか教えてください。宜しくお願いいたします。 (見にくい表で申し訳ありません)

  • Excel COUNTIF関数

    お世話になります。 countif関数について教えてください。 12345 12345A countif関数で、ワイルドカードを使用して、=countif(A:A,"12345*") とし、上記の12345で始まる文字列をカウントしようとしたのですが、 12345Aはカウントされ、12345はカウントされませんでした。 上記のような文字列を両方ともカウントさせるにはどうしたらいい でしょうか。 よろしくお願いします。

専門家に質問してみよう