UNIQUE関数の使い方としくみ|草野球成績管理表で出場選手一覧を自動生成する例で解説

フォーム・シート作成

スプレッドシートで重複データを整理するときに便利なUNIQUE関数について、使い方と内部のしくみを解説します。草野球の成績管理表でシーズン出場選手一覧を自動生成する場面を例に、初心者向けに丁寧に説明します。

UNIQUE関数とは

📝 UNIQUE関数の役割(一言でいうと)

指定した範囲の中から、重複を取り除いたリストを自動で作る関数です。成績管理表では「シーズンに出場した選手を1人ずつ一覧にしたい」「対戦したチーム名を重複なく並べたい」といった場面で活躍します。

基本の書式はこうです。

=UNIQUE(範囲)

範囲の中に同じ値が何度出てきても、UNIQUE関数は1回だけ拾い上げてくれます。

成績管理表での実例:シーズン出場選手一覧を自動生成する

大阪グーニーズの「出場記録」シートでは、試合ごとに出場した選手を1行ずつ記録しています。同じ選手が何試合にも登場するため、このままでは「誰が出場したか」の一覧としては使いにくい状態です。

試合日 選手名
4/6 SUZUKI
4/6 NAKATA
4/13 SUZUKI
4/13 YAMAMOTO

B列(選手名)には同じ名前が何度も登場しますが、これを重複なしの一覧に変換したいとき、式はこうなります。

✅ シーズン出場選手一覧を求める式
=UNIQUE(B2:B200)

これで「B2セルからB200セルまでの中から、重複を除いた選手名だけ」がリストとして表示されます。試合が増えて同じ選手の行が何度追加されても、一覧側は常に「1人1行」のまま保たれます。

STEP 1
一覧を表示したい先頭セルを選択する

出場選手一覧を表示したいセル(例:別シートの集計欄の先頭セル)をクリックして選択します。ここに式を入力するだけで、結果は下方向に自動で展開されます。

STEP 2
「=UNIQUE(」と入力し、対象範囲をドラッグで選択する

出場記録シートのB2からB200までをマウスでドラッグすると、自動で「B2:B200」の部分が入力されます。

STEP 3
「)」で閉じてEnterキーで確定する

式を確定すると、選択したセルを起点に重複のない選手名が縦に自動で並びます。式を入力したのは先頭セルだけですが、その下のセルにも自動的に結果が「はみ出して」表示される点が特徴です。

しくみを理解する:UNIQUEは何をしているのか

📝 UNIQUEの内部動作

UNIQUE関数は、指定した範囲を上から順に1セルずつ見ていき、「これまでに出力したリストにまだ無い値かどうか」を確認しながらリストを組み立てています。

  • 初めて登場した値だけがリストに追加される(2回目以降は無視される)
  • 出力される順番は、範囲内で最初に登場した順(50音順やアルファベット順に自動で並び替わるわけではない)
  • 結果は「スピル(こぼれ出し)」と呼ばれるしくみで表示される。式を入力したのは1セルだけでも、結果の件数に応じて下のセルへ自動的に展開される

よくあるミス

⚠️ 原因1:スピル先に別のデータが入っていてエラーになる

UNIQUEの結果は式を入力したセルから下へ自動的に広がっていくため、その下のセルに何かデータが入っていると、展開できずにエラーになります。一覧を表示するセルの下は、あらかじめ空けておく必要があります。

⚠️ 原因2:表記ゆれが別の値として扱われてしまう

「SUZUKI」と「SUZUKI 」(末尾に余分な空白)や、全角・半角の違いがあると、UNIQUEはこれらを別々の値として扱い、同じ選手なのに一覧に2行分表示されてしまいます。入力段階での表記ゆれを防ぐか、TRIMやSUBSTITUTEで整えた列を範囲に指定するのが安全です。

✅ この記事のまとめ
  • UNIQUE関数は「指定範囲から重複を除いたリストを作る」関数
  • 結果はスピル(自動展開)で表示される。下のセルが空いていないとエラーになる
  • 出力順は範囲内での初出順であり、並び替えではない点に注意

次回予告

次回のテーマは「SORT関数」「FILTER関数」です。並び替えと条件抽出を、それぞれの式だけで行うしくみを、打率ランキングの自動生成を例に解説していきます。

▶︎ 次回:SORT関数・FILTER関数の使い方としくみ

コメント

タイトルとURLをコピーしました