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には無いかもしれません。