エクセル:countifs関数の記述法と使い方を解説

このQ&Aのポイント
  • エクセルのcountifs関数を使って、特定の条件に合致するデータをカウントする方法を教えてください。
  • 質問者は、画像の一覧表から特定の条件(A列に"○"が付いた行、75歳~79歳の男性)に合致するデータをカウントしたいとしています。
  • 質問者の試した式が#VALUEエラーとなり解決できなかったため、代替案を探しています。
回答を見る
  • ベストアンサー

エクセル countifs関数の記述法を教えて

画像の一覧表から、A列に"○"が付いた行だけについて、75歳~79歳の男性の人数をカウントしたいのですが。 "○"を付けるする前の一覧表については、先の質問(No.8135362)で回答をいただき解決しました。    =COUNTIFS(C2:I6,">=70",C2:I6,"<80",D2:J6,"男") で5人となります。 このたび、A列に"○"を付けた行だけについてカウントする必要になり、次の式を立てましたが、#VALUEがでてしまい、どうにもなりません。    =COUNTIFS(A2:A6,"○",C2:I6,">=70",C2:I6,"<80",D2:J6,"男") countifs関数に、subtotal関数のような機能があればよいのですが、わかりません。 思いつくのは、フィルターをかけた後、その一覧表を、別シートにコピーペーストしてから、最初の式でカウントする方法しか思いあたらないのですが。 実際の表はもっとずっと大きいので、ひとつの関数式でできないものかと思っています。 よろしくお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! COUNTIFS関数は「AND」検索になりますので、 今回のように「○」の条件を追加し、「○」の列が1列しかない場合は コツコツとそれぞれのCOUNTIFSで計算した個数を加えていくしかないと思います。 お示しの画像だと、表示したいセルに =SUM(COUNTIFS(A2:A6,"○",C2:C6,">=70",C2:C6,"<80",D2:D6,"男"),COUNTIFS(A2:A6,"○",F2:F6,">=70",F2:F6,"<80",G2:G6,"男"),COUNTIFS(A2:A6,"○",I2:I6,">=70",I2:I6,"<80",J2:J6,"男")) といった感じですかね! 結局列数分だけの数式が必要になってくると思います。 ※ マクロで行えば簡単にできそうですが、今回はこの程度で・・・m(_ _)m

mtm1212
質問者

お礼

早速のご回答ありがとうございました。 前回のように、簡単な式は?と期待したのですが、コツコツと足していかなければならないのですね。 モヤモヤいていたものが解消されてすっきりしました。 ありがとうございました。

関連するQ&A

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

    エクセル countifs関数について 上記を使い、相談受けた内容や人の情報を日付ごとにまとめているデータを集計するやり方です。 その中にあるデータ 男 の数を月ごとにまとめたいのですが、 データは、同じ日なら、同じ列に追記していく形になっているので、 countif(c2:d34,〝男〝)として、 複数範囲 を選択し、男のデータを集計しておりました。 ただ、月ごとに自動で選択されるように h列に month関数で月の値を求めてから、 i列にi2から月の数字として、4~3 の値 入力。 式をcountifs(c:g,〝男〝,h :h,i2) としたところ、エラーとなり、データを求めることができませんでした。 範囲を、複数範囲と列 で設定しているのが、よくないと思うのですが、うまくやる方法ないですかね。 列 と列で揃えるしかないですかねぇ。 もし、よい方法があれば、ご教示ください。 ※データを言葉だけで表現しているので、大変わかりにくくて申し訳ありません。 countifsの考え方を知りたいというのが目的なので、実際の式、データよりは、かなり簡潔にして記載しております。

  • countifs関数

    countifs関数で複数条件に合うものをカウントしたいのですが たとえばA列にあるリンゴとミカンとバナナの中で B列にあるA商店 C列にある掛け売り といったようなカウントをする場合 どのように設定すればいいのでしょうか?

  • COUNTIFSでの"a"がカウントされないのは?

    2007にて、列Bの55と列Cの"a" が一致する場合の列Aの"あ"をカウントする式として下記にて問題なくカウントされています。 =COUNTIFS(A2:A5000,"あ",B2:B5000,55,C2:C5000"a") 別の条件から"a"をカウントしたく、上記のカッコの中の部分を下記のようにすると「0」となりカウントされません。 (C2:C5000,"a",D2:D5000,1,E2:E5000,"△") "a"を"?"とするとカウントはされますが、b,cも含まれるため役にたちません。 C列の書式も標準となっております。どこにアナがあるでしょうか? この関数を使っていて気づいたのですが、2行目は絶対参照にしているのですが、データが頻繁に増えるため5000行のところは相対となっています。式のコピーにより行番号がずれ不一致となると機能しません。 これだと、列によって対象範囲(行番号)を変えるということが出来ないのですが対処法はあるのでしょうか?

  • Excel2003におけるCountIFS関数

    Excel2003におけるCountIFS関数 Excel2007にはCountIFS関数というのがあり、一覧表から複数の条件を満たしたデータ(行)の件数をカウントできると思います。 この関数のExcel2003版は無いのでしょうか? クロス集計表を作成したいのですが、ピボットテーブルだと、件数がゼロ件の見出しは表示されないので、自分で手作りしたいと思っています。 教えて下さい。宜しくお願い致します。

  • excel2003でcountifs関数と同等の

    excel2003でcountifs関数と同等の効果を出すにはどうすればいいのでしょうか? 具体的には、A1からB100に1から5の数字がランダムに入っている場合、 AとBの列がどちらも3である行の個数をカウントしたいです。 よろしくお願いいたします。。

  • エクセル、COUNTIFS関数の範囲指定について

    エクセル2010です。 「A1の文字列が、B列とC列の中から合致し、さらにD列の"○○"という条件を満たすものはいくつあるか」 という数式を作りたいです。 写真でいうと、B・C列の中から中央区があるかどうか、さらにその中に山田がいるか、という検索式です。 そこで、COUNTIFS関数を使い、fxボタンで半自動で作ったところ、 =COUNTIFS(B:C,A1,D:D,"山田") となったのですが、なぜか結果はエラーになってしまっています。 どうやら検索条件の範囲が「B:C」になっているのが問題なのか、B:BやC:Cだけにすると、ひとつの列なら正常に計算するようです。 そこで式を二つに分け、プラスでつなげてみました。 =COUNTIFS(B:B,A1,D:D,"山田")+COUNTIFS(C:C,A1,D:D,"山田") こうしてみると一応成功しました。 しかし動作が重くなり、処理に数秒かかるようになってしまいました。 (B:Bなどひとつの列なら、数式を記入した瞬間に結果がでます) できれば数式は短くシンプルにしたいので、前述の短い形式のようにならないものか、と思います。 COUTIFS関数で、検索範囲を「○列~△列」のようにできないものでしょうか? アドバイスをよろしくお願いします。

  • Excel COUNTIFSでカウントできません

    Excel2007を使用しています。 複数の検索条件から、データの数をカウントしたかった為、COUNTIFSを使用してカウントしようとしたところ、エラーが返ってきてしまいました。 実際のではありませんが、下記のように記入しました。 =COUNTIFS(A:C,1,D:D,2) SUMPRODUCT((A:C=1)*(D:D=2)) なら、一応やりたいことは出来たのですが、動作が重くなってしまいました。 (面倒がらず列選択せず、きちんと範囲指定すれば別なのかもしれませんが) 何かスマートなやり方があれば、ご教授頂ければと思います。

  • エクセル カウントの簡単な記述法を教えて

    画像の表の中の、特定の年齢層の性別毎の数をカウントしたい。 画像では、3つのブロックの"70~79歳"までの"男"の数を集計する場合を例示しております。 countifs関数を用いて、3つのブロックごとの足し算を行えば集計できるのですが、実際のブロック数は6個ほどあります。 そのため実際には、足し算の代わりに、1ブロックの関数式を右ドラッグして、合計する方法をとっていますが、一つの式にまとめる方法がありましたら、教えてください。 集計の計算式:   =COUNTIFS(B2:B6,">=70",B2:B6,"<80",C2:C6,"男")     +COUNTIFS(E2:E6,">=70",E2:E6,"<80",F2:F6,"男")       +COUNTIFS(H2:H6,">=70",H2:H6,"<80",I2:IF6,"男")         + ・・・・・・・     もっと簡単な式になりませんか? win7 64bits、Excel2010、 IE9です。 確認ボタンをクリックしても、添付画像のfaile名は表示されてはいるものの、実際の表示状態を見ることができないので、うまく表示されるのか心配ですが、送信します。

  • エクセルの関数式について教えてください。お願いします。

    エクセルの関数式について教えてください。お願いします。   A B C D E F G H I J 1 9 6 1 3 4 7 8 2 5 10 2 6 4 9 3 8 7 1 5 10 2 3 1 3 -2 0 2 0 -4 1 1 -2 たとえばこのような表があります。 1の行にはランダムに1から10までの数字が入ります。 2の行にもランダムに1から10までの数字が入ります。 B1に6が入っています、A2にも同じ数字の6が入っています、 6はB1からA2に1つ上がっているので1 A1には9が入っています、C2にも9が入っています。 9はA1からC2に2つ下がっているので-2 D1には3が入っています、D2にも3が入っています。 3はD1からD2動いていないので0 といった具合に、1の行に入った数字が2の行の同じ数字を感知して その数字がどれだけ上がったのか、下がったのかを 3の行に表したいのですが、どのような関数を使ったらよいのでしょうか? 教えてください。お願いします。

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

    COUNTIFSの条件として、特定の日を検索条件にしたいと考えています。 例えば、A列には2015/01/06~2015/01/21のデータがあります。 その中から1日のみをカウントしたいです。年月は関係なく、特定の日にちのみをカウントの条件とすることは可能でしょうか?

専門家に質問してみよう