エクセルで、重複を除いた一覧を作るには UNIQUE関数を使います。部署の列なら、=UNIQUE(B3:B10) と入れるだけで 営業・総務・経理・開発 の4つが下のセルに並びます。
結果が複数のセルに広がる(スピルする)ので、式は1つのセルに入れるだけです。この記事では、UNIQUE関数の基本、1回だけ出てくる値の取り出し方、種類の数の数え方、一覧を使った集計、横に並べる方法、#SPILL! エラーの対処までを、1つの表で説明します。下の練習ツールで、部署を書き換えて結果の変わり方を試せます。
UNIQUE関数の書き方
| 引数 | 入れるもの | ポイント |
|---|---|---|
| 配列 | 重複を除きたい範囲 | 1列でも、複数列でも指定できます。 |
| 列の比較(省略可) | FALSE(省略)または TRUE | TRUE で横に並んだデータの重複を除きます。 |
| 回数指定(省略可) | FALSE(省略)または TRUE | TRUE で「1回だけ出てくる値」だけを返します。 |
Microsoft 365・Excel 2021 以降で使えます。
まず動かしてみよう|この記事のサンプルをその場で試せます
練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。
UNIQUE関数の使い方|やりたいこと別の式
| やりたいこと | 式(例) | 結果 |
|---|---|---|
| 重複を除いた一覧 | =UNIQUE(B3:B10) | 営業・総務・経理・開発 |
| 1回だけ出てくる値 | =UNIQUE(B3:B10,,TRUE) | 開発 |
| 種類の数 | =COUNTA(UNIQUE(B3:B10)) | 4 |
| 一覧ごとの合計 | =SUMIF(B3:B10,UNIQUE(B3:B10),C3:C10) | 470・145・185・110 |
| 横に並べる | =TRANSPOSE(UNIQUE(B3:B10)) | 営業・総務・経理・開発(横) |

重複を除いた一覧を作る
E3 から下に 営業・総務・経理・開発 が並びます。8人分の部署から、同じものを1つにまとめた4つです。並びは、元の表で最初に出てきた順です。元の部署を書き換えると、一覧も自動で変わります。
1回だけ出てくる値を取り出す
3つ目の引数に TRUE を指定すると、ちょうど1回だけ出てくる値だけを返します。開発部は渡辺さん1人なので 開発 です。2つ目の引数は省略するので「,,」と続けて書きます。
種類の数を数える
UNIQUE関数の結果の個数を COUNTA関数で数えると、部署は 4 種類です(COUNT関数・COUNTA関数の使い方)。
一覧ごとに合計する
SUMIF関数の条件に UNIQUE関数をそのまま入れると、一覧の順に部署ごとの売上が並び、営業 470・総務 145・経理 185・開発 110 です。部署が増えても、一覧と合計が一緒に増えます(SUMIF関数の使い方)。
横に並べる
TRANSPOSE関数で向きを変えると、E9 から右に 営業・総務・経理・開発 と横に並びます。表の見出しを作るときに便利です。
UNIQUE関数がうまくいかないときの確認表
| 症状 | 考えられる原因 | 対処 |
|---|---|---|
| 「#SPILL!」になる | 結果が広がる先のセルに値が入っている | 下(横)のセルを空ける。 |
| 「#NAME?」になる | Excel 2019 以前 | フィルターの詳細設定で「重複するレコードは無視する」を使う。 |
| 同じに見える値が別になる | 前後の空白や全角・半角の違いがある | TRIM関数や ASC関数でそろえてから使う。 |
| 「#CALC!」になる | 回数指定 TRUE で、1回だけの値が無い | IFERROR関数で表示を決める。 |
UNIQUE関数のよくある質問
大文字と小文字は区別される?
区別されません。「ABC」と「abc」は同じ値として1つにまとめられます。
一覧を並べ替えるには?
SORT関数と組み合わせて =SORT(UNIQUE(B3:B10)) とします。数値の一覧は小さい順に並びます。
あわせて読みたい:配列・抽出の関連記事
練習用ファイル:練習用Excelファイル(.xlsx・無料)
FILTER・UNIQUE・SORTを問題で練習したいときは、FILTER・UNIQUE・SORT関数の練習問題10問もあわせてご覧ください。
