皆さん、こんにちは。今回は、ExcelのFILTER関数を使って、データの中から特定の条件に完全一致する項目を抽出する方法についてお話しします。Excelを使っていて、「特定の値と完全に一致するデータだけを取り出したい」と思ったことはありませんか? そんな時に役立つのが、このFILTER関数です。
FILTER関数の基本的な使い方
まずは、FILTER関数の基本的な使い方を確認しましょう。FILTER関数は、指定した範囲から特定の条件に合致するデータを抽出するための関数です。基本的な構文は以下の通りです。
=FILTER(配列, 条件, [空の場合])
– 配列抽出対象となるデータの範囲を指定します。
– 条件抽出する際の条件を指定します。
– 空の場合条件に合致するデータがない場合に表示する値を指定します(省略可能)。
例えば、以下のようなデータがあるとします。
| 名前 | 年齢 | 部署 |
|---|---|---|
| 田中 | 30 | 営業 |
| 佐藤 | 25 | 開発 |
| 鈴木 | 28 | 営業 |
この中から、部署が「営業」の人を抽出したい場合、以下のように入力します。
=FILTER(A2:C4, C2:C4="営業", "該当なし")
この数式を入力すると、部署が「営業」の人のデータだけが抽出されます。
FILTER関数で完全一致検索を行う方法
しかし、FILTER関数はデフォルトでは部分一致の検索を行います。つまり、条件に指定した文字列が含まれているデータをすべて抽出してしまいます。例えば、名前に「田」が含まれる人を抽出しようとすると、「田中」だけでなく「田村」や「山田」も抽出されてしまいます。
では、特定の文字列と完全に一致するデータだけを抽出するにはどうすれば良いのでしょうか? その方法をご紹介します。
EXACT関数を組み合わせる方法
EXACT関数は、2つの文字列が完全に一致するかどうかを判定する関数です。これをFILTER関数と組み合わせることで、完全一致の検索を実現できます。
例えば、名前が「田中」と完全に一致する人を抽出したい場合、以下のように入力します。
=FILTER(C4, EXACT(A4, "田中"), "該当なし")
この数式では、EXACT関数が各セルの値と「田中」を比較し、一致する場合にTRUEを返します。FILTER関数は、このTRUEの行だけを抽出します。
COUNTIF関数を利用する方法
もう一つの方法として、COUNTIF関数を利用する方法があります。COUNTIF関数は、指定した範囲内で特定の条件に合致するセルの数を数える関数です。これを利用して、完全一致の条件を設定することができます。
例えば、名前が「田中」と完全に一致する人を抽出したい場合、以下のように入力します。
=FILTER(C4, COUNTIF(A4, "田中"), "該当なし")
この数式では、COUNTIF関数が各セルの値と「田中」を比較し、一致する場合に1を返します。FILTER関数は、この1の行だけを抽出します。
よくある質問や疑問
FILTER関数で大文字と小文字を区別して検索できますか?
はい、できます。EXACT関数は大文字と小文字を区別して比較を行います。したがって、EXACT関数を組み合わせることで、大文字と小文字を区別した完全一致の検索が可能です。
FILTER関数で数値の完全一致を行うにはどうすれば良いですか?
数値の場合、通常の比較演算子を使用して完全一致の条件を設定できます。例えば、年齢が30の人を抽出したい場合、以下のように入力します。
=FILTER(C4, B2:B4=30, "該当なし")
まとめ
今回は、ExcelのFILTER関数を使って、特定の条件に完全一致するデータを抽出する方法をご紹介しました。EXACT関数やCOUNTIF関数を組み合わせることで、より柔軟なデータ抽出が可能となります。ぜひ、日々の業務で活用してみてください。



コメント