重複するデータで一意の入力値の個数を数える

適用先
Excel for Microsoft 365 Excel for Microsoft 365 for Mac Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

たとえば、重複する値を含む範囲に存在する一意の値の数を確認するとします。 たとえば、列に次のものが含まれている場合:

  • 値 5、6、7、および 6 の場合。結果は 3 つの一意の値、5、6、7 になります。
  • 値 "Bradley"、"Doyle"、"Doyle"、"Doyle" の場合。結果は 2 つの一意の値、"Bradley" と "Doyle" になります。

重複の間で一意の値をカウントするには、いくつかの方法があります。

フィルターを使用して一意の値の数をカウントする

[高度なフィルター] ダイアログ ボックスを使用して、データ列から一意の値を抽出し、別の場所に貼り付けることができます。 その後、ROWS 関数を使用して新しい範囲にある項目の個数をカウントできます。

  1. 操作対象とするセル範囲を選択するか、テーブルにアクティブなセルがあることを確認します。
    セルの範囲に列見出しがあることを確認します。
  2. [ データ ] タブの [ 並べ替え] & [フィルター] グループで、[詳細設定] を選択 します
    [高度なフィルター] ダイアログ ボックスが表示されます。
  3. [ 別の場所にコピー] を選択します
  4. [コピー先] ボックスにセル参照を入力します。
    または、[ダイアログ ボタンの画像折りたたむ] を選択してダイアログ ボックスを一時的に非表示にし、ワークシート上のセルを選択し、[ダイアログ ボタンの画像の展開] を押します。
  5. [一意のレコードのみチェック] ボックスを選択し、[OK] を選択します
    選択した範囲の一意の値は、[コピー先] ボックスで指定したセルで始まる新しい場所にコピーされます。
  6. 範囲内の最後のセルの下にある空白セルに、ROWS 関数を入力します。 列見出しを除き、引数としてコピーした一意の値の範囲を使用します。 たとえば、一意の値の範囲が B2:B45 の場合は、「=ROWS(B2:B45)」と入力します。

関数を使用して一意の値の数をカウントする

この処理を実行するには、IF 関数、SUM 関数、FREQUENCY 関数、MATCH 関数、および LEN 関数の組み合わせを使用します。

  • IF 関数を使用して、真となる条件ごとに値 1 を代入します。
  • SUM 関数を使用して、合計を算出します。
  • FREQUENCY 関数を使用して、一意の値の数をカウントします。 FREQUENCY 関数は、テキストと 0 の値を無視します。 特定の値が初めて出現する場合、この関数は、その値の出現回数と等しい数値を返します。 最初の値の後に同じ値が出現するたびに、この関数は 0 を返します。
  • MATCH 関数を使用して、範囲内のテキスト値の位置を返します。 返されたこの値は、対応するテキスト値を評価できるように、FREQUENCY 関数の引数として使用されます。
  • LEN 関数を使用して、空白セルを検索します。 空白セルの長さは 0 です。

重複の間で一意の値の数を数える入れ子になった関数の例

  • この例の数式は配列数式として入力する必要があります。 現在のバージョンの Microsoft 365 がある場合は、出力範囲の左上のセルに数式を入力し、 Enter キーを押して数式を動的配列数式として確認できます。 それ以外の場合、最初に出力範囲を選択し、出力範囲の左上のセルに数式を入力し、CTRL+SHIFT+ENTERキーを押して確定し、従来の配列数式として数式を入力する必要があります。 Excel によって、数式の先頭と末尾に中かっこが挿入されます。 配列数式の詳細については、「配列数式のガイドラインと例」を参照してください。
  • 関数の評価を段階的に表示するには、数式を含むセルを選択し、[ 数式 ] タブの [ 数式の監査 ] グループで [ 数式の評価] を選択します。

関数についての詳細情報

  • FREQUENCY 関数は、範囲内でのデータの頻度分布を計算し、縦方向の数値の配列として返します。 たとえば、FREQUENCY 関数を使うと、試験の成績の範囲内に含まれる成績の頻度分布を計算することができます。 この関数は配列を返すため、配列数式として入力する必要があります。
  • MATCH 関数は、セルの範囲内で指定した項目を検索し、その範囲内の項目の相対的な位置を返します。 たとえば、範囲 A1:A3 に値 5、25、38 が含まれている場合、数式「=MATCH(25,A1:A3,0)」を入力すると、範囲内では 25 が 2 番目の項目であるため、数字 2 が返されます。
  • LEN 関数は、文字列の文字数を返します。
  • SUM 関数は、引数として指定したすべての数値を加算します。 各引数には、範囲、セル参照、配列、定数、数式、または別の関数の結果を指定できます。 たとえば、SUM(A1:A5) は、セル A1 ~ A5 に含まれるすべての数値を加算します。
  • IF 関数は、指定された条件を評価した結果が TRUE の場合はある値を返し、評価した結果が FALSE の場合は別の値を返します。

補足説明

Excel Tech Community の専門家にいつでも依頼したり、コミュニティでサポートを受けたりすることができます。

関連項目

重複しない値を抽出する、または重複する値を削除する