Office2021(Office365)・Web版で利用可能な関数にUNIQUE関数というものがあります
この関数は指定した配列データの中で重複したデータを削除したデータを返す関数です
この関数を利用することで、表のデータから簡単に重複しないデータを取得できます
この重複しないデータの作成は、案外利用場面が多くあったのですが、標準機能ではデータタブ内にある重複データの削除という機能から行うことが出来ます
後述しますが、まだこちらの機能に完全に有利になってはいないので、この機能を知らない人はデータタブ内を確認してみてください
ただ、こちらは関数のためいちいちデータを転記して操作を行わなくても関数の再計算のタイミングで自動的に取得できるのは便利です(常に最新情報)
関数の書式
引数(太字は必須引数)
(配列, [列の比較], [回数指定])
「配列」は重複しないデータを作成する配列データです
連続していれば複数列を範囲指定することが出来ます
「[列の比較]」は、重複参照時に列方向を対象にするかどうかの指定です
列を対象にすると、列方向に重複しない場合はその列が取得されません
あまりExcelのデータ形式からすると使用しないかもしれません
省略時は行方向が指定されることになります
「[回数指定]」は、重複データの中でも1度しか出てこないデータだけを指定できます
1度しか出てこないデータは、配列データ内で完全に一意になっているデータという事になります
案外欲しい、この逆説のデータ取得は出来ません
実際の使用例
今回はこのデータを元に関数を使用してみます
UNIQUE(Sheet1!A2:A21)
基本的な使い方として、指定データ範囲を配列データとして指定します
今回はA列のデータ範囲を指定しています
この中から重複したデータだけを削除したものが取得されています
データの総数は20個ですが、重複データが15個あるのがこれで分かりますね
=UNIQUE(Sheet1!A2:A21,,TRUE)
次に完全な一意のデータのみを取得してみます
3つ目の引数に「TRUE」を指定します
指定配列内の中で、1度しか出てこなかったデータが取得されます
「kkk001」と「kkk003」が複数回出てきていたことが、前回の結果と比べると分かりますね
ここが前述の逆説のデータをとれないという点ですが、この複数回出てきているデータだけを取得する設定が無いんですね、なんでやろね
=UNIQUE(Sheet1!A2:B21)
次に複数条件での重複除外データの取得を行ってみます
A列とB列の両方を配列データに指定することで、複合的な条件でリスト作成を行うことが出来ます
この場合ですと、A列とB列の両方が重複するものが除外される形になります
ただ少し残念なのが、連続した範囲でしかセル指定が行えない点です
A列とC列を参照したい場合に、そのままでは指定が行えないのですね
なので、C列のデータをB列に持ってくるような工夫が必要になります
ここが最初の方で記載した、既存の重複データの削除機能に優位になっていない点です
重複データの削除機能は飛び飛び列で条件指定を行うことが出来ます
この様に単独列の重複しないデータのリストが簡単に作成できる関数であることが分かってもらえると思います