7/19/2022

Excel。列方向に重複したデータを手早く除いたリストをつくりたい【overlapping】

Excel。列方向に重複したデータを手早く除いたリストをつくりたい

<UNIQUE関数>

データベースの機能はExcelにもたくさん用意されています。


データベースの機能の為、あくまでも行というレコードに対して処理できるけど、列というフィールドに対しては対応してくれません。


そのため、応用できないものもあります。


例えば、データタブにある「重複の削除」です。


重複のデータを簡単に除いたデータを抽出することができる機能ですが、列方向には対応しておりません。


次の表をつかって、実行してみます。


実行すると、「重複の削除に関する警告」ダイアログボックスが表示されます。

どちらを選択して、重複の削除ボタンをクリックしても、エラーメッセージが表示されます。


要するに、列方向ではこの「重複の削除」を実行することができないというわけです。


そこで、「UNIQUE関数」をつかうと、手早く、列方向の重複を除いたデータを抽出することができます。


B4にUNIQUE関数をつかった数式を設定します。


=UNIQUE(B2:G2,TRUE,FALSE)


設定後、スピル機能によって、数式がコピー(スピル)されます。


UNIQUE関数の引数も確認しておきましょう。


最初の引数は、配列。範囲選択のことだと思ってもらえればいいので、B2:G2と設定します。

スピル機能によって、絶対参照は不要です。


2つ目の引数は、列の比較です。

TRUEは一意の列を返す。FALSEは一意の行を返す。

列が対象なので、TRUEと設定しました。


3つ目の引数は、回数の指定です。

TRUEは、「1回だけ出現するアイテムだけを返す」。

FALSEは、「個別のアイテムをすべて返す」。

を設定することができます。


重複していないデータのみを抽出したい場合は、「TRUE」を設定しますが、重複データも含めたデータを抽出したいので、今回は「FALSE」を設定しました。


たったこれだけですが、手早く抽出すうることができる効果抜群の関数ですね。


このUNIQUE関数は、「重複の削除」と同じように、行方向に対しても対応してくれます。


ちょっとした注意点として、比較的新しい関数なので、お使いのExcelには無いかもしれません。