OfficeType

Excel~COUNTIF関数で条件に合うセルをカウントしよう~エクセル

エクセルで指定した範囲内において検索条件に一致するセルの個数を数えるCOUNTIF関数について説明します。

  • COUNTIF関数の書式はCOUNTIF(範囲, 検索条件)になります。
  • 範囲は条件を判定したい範囲を設定します。
  • 検索条件は範囲の中から検索したい条件を設定します。

文字列を条件にする

下の画像の例で1班の人の人数をセルD2に表示したい場合はセルD2に=COUNTIF(B2:B7,"1班")と入力しEnterを押します。

条件を判定したい範囲は班の項目なのでセルB2からセルB7の範囲を設定するのでB2:B7になります。

検索条件は1班の人の人数をカウントしたいので"1班"になります。条件は"(ダブルクォーテーション)で囲んでください。

つまりセルD2に=COUNTIF(B2:B7,"1班")と入力しEnterを押すと1班はAさん、Dさん、Eさんの3人なので3が表示されます。

数値を条件にする

下の画像の例で4以上の数値の数をセルC2に表示したい場合はセルC2に=COUNTIF(A2:A7,">=4")と入力しEnterを押します。

条件を判定したい範囲は数値の項目なのでセルA2からセルA7の範囲を設定するのでA2:A7になります。

検索条件は4以上の数値を合計したいので">=4"になります。>=を含めて"(ダブルクォーテーション)で囲んでください。

比較演算子は以下の表に対応しています。

比較演算子説明
>より大きい
<より小さい
=等しい
>=以上
<=以下
<>等しくない

つまりセルC2に=COUNTIF(A2:A7,">=4")と入力しEnterを押すと4以上の数値は4,5,6の3個なので3が表示されます。

空白を条件にする

下の画像の例で商品名が空白の数をセルD2に表示したい場合はセルD2に=COUNTIF(A2:A8,"")と入力しEnterを押します。

条件を判定したい範囲は商品名のの項目なのでセルA2からセルA8の範囲を設定するのでA2:A8になります。

検索条件に空白を設定したい場合は""を入力します。

つまりセルD2に=COUNTIF(A2:A8,"")と入力しEnterを押すと商品名が空白なのはセルA5,A7の2つなので2が表示されます。

空白以外を条件にする

下の画像の例で商品名が空白以外の数をセルD2に表示したい場合はセルD2に=COUNTIF(A2:A8,"<>")と入力しEnterを押します。

条件を判定したい範囲は商品名の項目なのでセルA2からセルA8の範囲を設定するのでA2:A8になります。

検索条件に空白以外を設定したい場合は"<>"を入力します。

つまりセルD2に=COUNTIF(A2:A8,"<>")と入力しEnterを押すと商品名が空白でないセルはセルA2,A3,A4,A6,A8の5つなので5が表示されます。

日付を条件にする

下の画像の例でセルD2に表の中の2016/10/3以降の日数を表示したい場合はセルD2に=COUNTIF(A3:A8,">=2016/10/3")と入力しEnterを押します。

条件を判定したい範囲は日付の項目なのでセルA3からセルA8の範囲を設定するのでA3:A8になります。

検索条件を日付にしたい場合は指定した日付以降をカウントしたい時は比較演算子>=、以前をカウントしたい場合は<=を使います。今回の場合は2016/10/3以降なので">=2016/10/3"となります。

つまりセルD2に=COUNTIF(A3:A8,">=2016/10/3")と入力しEnterを押すと範囲内における2016/10/3以降の日数2が表示されます。

任意の文字列を含む事を条件にする

任意の文字列を含むことを条件に指定したい場合はワイルドカードの*(アスタリスク)か?(クエスチョンマーク)を使います。*は文字数無制限の文字列を意味します。例えば"あ*"は最初に"あ"を含む文字列を意味します。"あいうえお"でも"あい"でも条件に一致したとみなされます。"*お"は最後に"お"を含む文字列を意味します。"あいうえお"でも"えお"でも条件に一致するとみなされます。?は1文字を意味します。たとえば"あ?"は最初に"あ"を含む2文字を意味します。"あい"や"あう"は条件に一致しますが、"あいう"は条件に一致しません。最初に"あ"を含む3文字を条件にしたい場合は"あ??"とします。

下の画像の例で名前の最後に"君"を含む人の人数をセルC2に表示したい場合はセルC2に=COUNTIF(A2:A7,"*君")と入力しEnterを押します。

条件を判定したい範囲は名前の項目なのでセルA2からセルA7の範囲を設定するのでA2:A7になります。

検索条件は名前の最後に"君"を含むことなので"*君"となります。

つまりセルC2に=COUNTIF(A2:A7,"*君")と入力しEnterを押すと名前の最後に君を含む人はB君、D君、F君の3人なので3が表示されます。

別セルの文字列を参照して条件にする

下の画像の例で検索条件にセルD2を参照してセルE2に1班の人の人数を表示したい場合はセル E2に=COUNTIF($B$2:$B$7,D2)と入力しEnterを押します。オートフィルした時に範囲がズレないように範囲に絶対参照$を使用しています。

条件を判定したい範囲は班の項目なのでセルB2からセルB7の範囲を設定するので$B$2:$B$7になります。

検索条件はセルD2の"1班"を参照するので、D2になります。文字列を参照する場合は"(ダブルクォーテーション)で囲まないので注意してください。

つまりセルE2に=COUNTIF($B$2:$B$7,D2)と入力しEnterを押すと1班の人はAさん、Dさん、Eさんの3人なので3が表示されます。

セルE2からセルE3までオートフィルすれば2班の人の人数も求められます。

別セルの数値を参照して条件にする

下の画像の例で検索条件にセルC2を参照してセルD2に数値の項目の2以上の数値の数を表示したい場合はセルD2に=COUNTIF($A$2:$A$7,">="&C2)と入力しEnterを押します。オートフィルした時に範囲がズレないように範囲に絶対参照$を使用しています。

条件を判定したい範囲は数値の項目なのでセルA2からセルA7の範囲を設定するので$A$2:$A$7になります。

検索条件はセルC2の2を参照するので、">="&C2となります。数値を参照する場合は比較演算子だけ"(ダブルクォーテーション)で囲み&(アンパサンド)で比較演算子と参照を連結します。画像の例では">="&C2とすることで">=2"を表せます。

つまりセルD2に=COUNTIF($A$2:$A$7,">="&C2)と入力しEnterを押すと2以上の数値は2,3,4,5,6の5つなので5が表示されます。

セルD2からセルD3までオートフィルすれば4以上の数値の数も求められます。