UNIQUE関数とは
UNIQUE関数は、範囲内の値から重複を除いた一覧を作成する関数です。Microsoft 365のExcelで利用できます。
従来、重複を除いたリストを作るには「重複の削除」機能で元データを加工するか、ピボットテーブルを立てる必要がありました。UNIQUE関数なら元データを一切変更せず、別の場所に重複なしリストを作成でき、元データが更新されると結果も自動で変わります。名簿・訪問履歴・発注履歴など、「履歴は残したいが一覧も欲しい」という場面で真価を発揮します。

基本的な使い方
書式は =UNIQUE(配列) だけです。引数は1つで、重複を除きたい範囲を指定します。
入力手順
- 結果を出力したい先頭セルを選択する
- =UNIQUE( と入力する
- 対象の範囲(例:A2:A9)を指定してEnterを押す
出力された一覧はスピルで展開されます。元のリストに行を追加すると、新しい値が自動で一覧に反映されます。重複が減れば一覧も自動で縮みます。
第2・第3引数の使い方
- by_col(第2引数):TRUEを指定すると、行ではなく列方向の比較になります
- exactly_once(第3引数):TRUEを指定すると「1回だけ登場する値」だけを残し、2回以上登場する値をすべて除外します
たとえば訪問履歴で「1回しか来ていない担当者」を調べるなど、逆方向の使い方もできます。

SORT関数と組み合わせて五十音順に並べる
UNIQUE関数の出力は元データの登場順です。一覧を見やすくするには、SORT関数で包みます。
=SORT(UNIQUE(A2:A9))
これで「重複なし・昇順」のリストが完成します。ドロップダウンリストの元データや、帳票の分類一覧にそのまま使えます。
実務で役立つ活用テクニック
プルダウンリストの選択肢を自動更新する
データの入力規則(プルダウン)の元範囲にUNIQUE関数の結果を指定しておくと、元データに新しい分類が追加されたとき、プルダウンの選択肢も自動で増えます。名前・担当者・区分などの入力欄で、選択肢のメンテナンスが不要になります。
2列セットで重複を除く
配列に2列以上を指定すると、「行全体が同じ」ものだけを重複とみなして除きます。「担当者×支店」の組み合わせなど、ペア単位の一覧化に使えます。
FILTER関数と組み合わせて条件付きの一覧を作る
=UNIQUE(FILTER(A2:A100, B2:B100="東京")) と書くと、「東京の行に登場する担当者の重複なし一覧」が作れます。支店別の担当者リストなどに便利です。
重複の「個数」を数える
一覧に対してCOUNTIF関数を使えば、各値が何回登場したかを隣の列に並べられます。重複を除いた件数そのものを数える方法は重複を除いたデータの個数を数える方法で詳しく解説しています。
よくあるエラーと対処法
#SPILL!エラーが出る
展開先に値が入っていると表示されます。出力範囲を空けてください。一覧の長さは元データで変わるため、下に余白を十分に確保しましょう。
空白セルが一覧に残る
範囲の末尾に空白セルが含まれていると0として扱われることがあります。FILTER関数と組み合わせて空白を除外できます。
=UNIQUE(FILTER(A2:A9, A2:A9<>""))
見た目が同じなのに重複が残る
空白の入った「 田中」と「田中」、数値の「100」と文字列の「100」は別の値として扱われます。TRIM関数で前後の空白を除去した列を作ってからUNIQUEに渡すと解決します。
Excel 2019以前で#NAME?になる
UNIQUE関数はMicrosoft 365・Excel for web・Excel 2021以降専用です。旧環境ではピボットテーブルや「重複の削除」機能で代替してください。
よくある質問
Q. 元のデータの順番は保たれますか?
A. 保たれます。UNIQUE関数は「初めて登場した順」で出力するため、元データの並び順を反映した一覧になります。順番を揃えたい場合はSORT関数と組み合わせてください。
Q. 大文字・小文字は区別されますか?
A. 区別されません。「ABC」と「abc」は同じ値として扱われ、1つにまとめられます。
Q. 空白(””)のセルはどう扱われますか?
A. 空のセルも1つの値として一覧に残ることがあります。=UNIQUE(FILTER(A2:A100, A2:A100<>"")) で除外するのが確実です。
まとめ
UNIQUE関数は、重複だらけのリストから「使える一覧」を瞬時に作る関数です。元データを加工しないので安全で、更新にも自動対応します。SORT関数・FILTER関数と組み合わせれば、実務のほぼすべての一覧作成が1つの式で済むようになります。まずは担当者リストや分類リストから導入してみてください。
関連記事
- Excelで重複を除いたデータの個数を数える方法:COUNTUNIQUE関数
- Excelで重複チェックをする関数:データの正確性を保つ
- Excelで文字列を日付に変換!DATEVALUE関数で日付データを扱う
- Excelで文字列を数値に変換する関数!VALUE関数でデータ分析を効率化
