Amazon10/19まで!プライム感謝祭開催中!セール会場へ

スプレッドシートのUNIQUE関数|重複なしの一覧と「1回だけ」の抽出方法

UNIQUE関数の使い方 / 重複なしの一覧を作る

Googleスプレッドシートで重複のない一覧を作るには、UNIQUE関数に元データの範囲を指定します。元の表を削除せず、別の場所に一覧を表示できるので、顧客名や商品名の候補リストを作るときに便利です。

ただし、「重複した名前を一つにまとめる」と「一度しか登場しない名前だけ残す」は別の処理です。この記事では、小さな名簿を例に、基本式・空白除外・複数列の判定・並べ替えを整理します。

目次

まずは1列の重複をまとめる

A1に「担当者」、A2:A6に次のデータがあるとします。結果を表示するC2へ式を入力してください。C2の下には、結果が展開できる空き領域を用意します。

セル入力値
A2佐藤
A3鈴木
A4佐藤
A5田中
A6鈴木
=UNIQUE(A2:A6)

この例では、佐藤・鈴木・田中の3行になります。五十音順に自動整列するわけではなく、元データで最初に登場した順です。A列を直接書き換える処理でもありません。

範囲をA2:A1000のように広げれば、範囲内に追加したデータも対象になります。表全体の規模に合わせ、必要な行数を含めてください。

「一度だけ登場する値」を出すには第3引数を使う

構文はUNIQUE(範囲, 列単位, 1回のみ)です。第2引数をFALSEにすると行単位で判定し、第3引数をTRUEにすると、元データ内で一度しか出現しない行だけを返します。

=UNIQUE(A2:A6,FALSE,TRUE)

先ほどの名簿なら、結果は田中だけです。佐藤と鈴木は一つずつ残るのではなく、複数回出現しているため対象外になります。重複を除いた全員の一覧が欲しい場合は、最初のシンプルな式を使いましょう。引数の意味はGoogle公式のUNIQUE関数ヘルプでも確認できます。

空白を除外して一覧を作る

途中に空白がある表や、入力予定の行まで指定した表では、先にFILTERで空白を外すと一覧を整えやすくなります。

=UNIQUE(FILTER(A2:A1000,A2:A1000<>""))

内側のFILTERが、A列に値のある行を取り出し、外側のUNIQUEが重複をまとめます。抽出する範囲と条件範囲の行数は同じにします。FILTER自体の仕様は公式ヘルプを参照してください。

入力が一件もないときも空欄表示にしたい場合は、IFNAを組み合わせられます。

=IFNA(UNIQUE(FILTER(A2:A1000,A2:A1000<>"")),"")

この形は、対象がないときの#N/Aを空欄にします。元データ側の#N/Aまで見えなくなる場合があるので、式が正常に動くことを確認してから加えてください。全角スペースだけが入ったセルは、空文字とは異なるため、この条件だけでは除外できません。

2列を指定すると「組み合わせ」で重複を判定する

A列が担当者、B列が部署なら、次の式は2列の組み合わせが同じ行をまとめます。

=UNIQUE(A2:B100)

「佐藤・営業」と「佐藤・制作」は別の行として残ります。担当者名だけで一人にまとめたい場合はA列だけを対象にしてください。異なる部署を無理に一つへまとめると、必要な情報を落とすことがあります。

先に「何が同じなら重複か」を決めるのが重要です。商品名だけなのか、商品名と色なのか、顧客IDなのかで指定範囲が変わります。名前が同じ別人を区別する表では、名前よりIDを判定の基準にします。

並べ替えたい場合はSORTを組み合わせる

=SORT(UNIQUE(FILTER(A2:A1000,A2:A1000<>"")),1,TRUE)

重複をまとめた結果を、1列目の昇順で表示する例です。TRUEをFALSEにすれば降順になります。複数列の結果を並べ替える場合は、何列目を基準にするかも決めます。詳しい指定方法はSORT関数の公式ヘルプを確認できます。

重複が残る・結果を表示できないときの確認順

  • 同じ名前に見える場合:末尾の空白、改行、全角・半角など、実際の入力値を比べる。
  • 同じ名前が複数行になる場合:複数列を指定し、別の列の値が違っていないか確認する。
  • 結果が展開できない場合:表示先の下や右にある値、数式、結合セルを確認する。
  • 追加データが出ない場合:追加した行が数式の参照範囲に入っているか確認する。

UNIQUEは入力内容の表記ゆれを自動で統一する機能ではありません。前後の空白を整える場合も、元データを別列に残してから補助列で処理すると、意図しない変換を比較できます。

元データを残すか、重複行を削除するかで選ぶ

更新に合わせて候補一覧を作りたいときはUNIQUEが向いています。表そのものの重複行を整理したい場合は、スプレッドシートで重複を削除する方法も選択肢です。削除の前には、どの列を基準にするかと、残したいデータを確認してください。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

スプレッドシート・GASのおすすめ書籍

作業環境の作り方

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次