FILTER関数やUNIQUE関数などの新関数の醍醐味は「関数同士の組み合わせ」にあります!
今回は FILTER関数とUNIQUE関数 の組み合わせにより、ある表から条件に合う重複が無いリストを作成する方法を解説します
![](https://analytic-vba.com/wp/wp-content/uploads/2021/12/image.png)
そして、最後はUNIQUE関数xFILTER関数の組み合わせを応用した内容も解説します
関数の指定範囲に空欄が含まれると、下の画像のように出力結果に「0」が含まれてしまいますので、0を含まれないようにする方法も解説します
![](https://analytic-vba.com/wp/wp-content/uploads/2021/12/image-1.png)
目次
条件に合う重複無リスト作成
応用編
<まとめ>
条件に合う重複無リスト作成
今回は、下の画像の左にある表から「70点未満の得点を一度でも取った人」リストを重複が無いように作成します
![](https://analytic-vba.com/wp/wp-content/uploads/2021/05/image-50.png)
抽出元の表には、田中さんや佐藤さんのように同じ名前の人のデータが複数含まれています
まずは設定条件/<70に沿ったFILTER関数を作成してみましょう
FILTER関数の書き方は次の通りです
=FILTER(抽出範囲,条件)
上の書き方を今回のやりたい事に当てはめると次の画像の通りになります
![](https://analytic-vba.com/wp/wp-content/uploads/2021/05/image-51.png)
上の画像では、まだFILTER関数しか入力していないので、リストに佐藤さんの名前が複数回登場しています
ですので、FILTER関数にUNIQUE関数を下の画像のように組み合わせます
![](https://analytic-vba.com/wp/wp-content/uploads/2021/05/image-52.png)
これで、佐藤さんの登場は1回のみになりました
応用編
仮に、下の画像のように指定範囲を空欄にした場合には、下の画像のように「0」が関数の抽出結果に含まれてしまいます
![](https://analytic-vba.com/wp/wp-content/uploads/2021/05/image-55.png)
この時には、FILTER関数の設定条件に「AND条件」を加えます
このANDで追加される条件は「>0」です
この「AND条件」をFILTER関数に設定する場合には下の画像の黄色で囲まれた箇所のように「*」を使います
![](https://analytic-vba.com/wp/wp-content/uploads/2021/05/image-54.png)
これで不必要な0が消えました
<まとめ>
今回は、UNIQUE関数とFILTER関数を組み合わせて、条件に合った、重複が無いリストを作成しました
この組み合わせを覚えると、今までピボットテーブル経由で取得していたデータが関数だけで取得できるのでとても便利です
ぜひ有効活用していきましょう!
後、FILTER関数の設定条件に「*」を使用してAND条件で抽出する方法もぜひ覚えておきましょう
最後に、「+」を使用するとOR条件にて抽出できる旨も付け加えておきます
![にほんブログ村 資格ブログ ビジネススキルへ](http://qualification.blogmura.com/businessskill/img/businessskill88_31.gif)
![にほんブログ村 IT技術ブログ VBAへ](http://it.blogmura.com/vba/img/vba88_31.gif)