【エクセル時短】は「少しでも早く仕事を終わらせたい!」というビジネスパーソンのみなさんに、Excelの作業効率をアップするワザをお届けする連載です。
ダブりのないデータを一瞬で抽出
Excelでは、同じ値が複数入力されている表から「一意の値」(固有の値/唯一の値)を取り出したいケースがあります。例えば、以下では同じ氏名が複数入力されているセミナー受講者の表から、重複を除いた固有の氏名だけを取り出しています。
セミナーA・B・Cの受講者リスト。同じ人が複数のセミナー(講座)を受講しているため、左側の表には同じ氏名が複数入力されていますが、赤枠で囲んでいる部分では、重複を除いた氏名を抽出しています。
従来、このようなデータの抽出を行うには、重複を含む値をコピー&ペーストして貼り付け、その後に[重複の削除]機能を利用していました。
しかし、Microsoft 365およびOffice 2021のExcelでは、このようなデータの抽出を一発で実現できる「UNIQUE関数」が利用できるようになっています。名前の通り、「ユニーク(一意)な値」を取り出せる関数で、業務効率がアップすること間違いなしのおすすめ関数です。
UNIQUE関数の使い方をさっそく見ていきましょう。
UNIQUE関数で重複を除いた値を取り出す
UNIQUE関数の構文は以下の通りです。
=UNIQUE
(範囲, 検索方向, 回数)
1つ目の引数[範囲]では、重複データを含むセル範囲を指定します。
2つ目の引数[検索方向]では、行方向(右方向)にチェックするときは「TRUE」、列方向(下方向)にチェックするときは「FALSE」を指定します。省略した場合は「FALSE」となります。
3つ目の引数[回数]では、重複していない値のみ(1回のみ出現する値)を抽出したいときは「TRUE」、重複データを除く一意の値を抽出したいときは「FALSE」を指定します。省略した場合は「FALSE」となります。
冒頭の例と同じく、多くのケースでは、表の列方向(下方向)に並んでいるデータから、重複データを除く一意の値を抽出したいはずです。その場合、引数は[範囲]の1つだけで完結します。
UNIQUE関数の実際の動作を見てみましょう。冒頭の例の[氏名]列から、ユニークな氏名だけを取り出したリストを生成してみます。
1UNIQUE関数を入力する
セルE3に「=UNIQUE(B3:B22)」と入力します。
2一意の値を抽出できた
一意の値を、あっという間に抽出できました。
UNIQUE関数の数式を入力したのは、セルE3のみです。[Enter]キーを押した直後の状態なので、アクティブセルはセルE4に移動していますが、数式バーを確認すると、数式は「=UNIQUE(B3:B22)」のままとなっています。
UNIQUE関数は「スピル」と呼ばれる機能に対応しており、戻り値が配列形式で表示されるため、このような結果になります。結果の値はコピーして扱うことも可能なので、旧バージョンのExcelを使っている人とファイルを共有する場合は、値としてコピーしておきましょう。
UNIQUE関数で1回しか現れない値を取り出す
UNIQUE関数の基本的な使い方が分かったところで、3つ目の引数[回数]を「TRUE」にした場合についても確認しておきましょう。
この場合は重複していない値(1回のみ出現する値)のみが抽出されるので、セミナーA・B・Cの受講者リストから、いずれかのセミナーを1回しか受講していない氏名だけが取り出されます。
1UNIQUE関数を入力する
セルE3に「=UNIQUE(B3:B22,FALSE,TRUE)」と入力します。2つ目の引数は省略して「=UNIQUE(B3:B22,TRUE)」としても構いません。
2重複していない値を抽出できた
重複していない値(1回のみ出現する値)を抽出できました。いずれかのセミナーを1回しか受講していない人は1人だけだったと分かります。
UNIQUE関数の使い方を解説しました。
「列方向(下方向)で一意の値のみ抽出」の利用頻度は高く、引数1つで一気に解決できるUNIQUE関数のメリットは大きいでしょう。ぜひ業務に活用してみてください。