スキルアップを始める

【FILTER関数】FIND関数と組み合わせて「あいまい検索」をする方法(Googleスプレッドシート)

Googleスプレッドシート
メルマガ購読できます

簡単1ステップ!届いたメールの「フォローを確認」クリックでメルマガ登録!一緒にスキルアップを目指しましょう!

57人の購読者に加わりましょう

FILTER関数であいまい検索(抽出)をする方法です。

FILTER関数とは?

FILTER関数を使うと、範囲の中から特定条件の結果を抽出することができます。

=FILTER(配列,含む,[空の場合])

GoogleスプレッドシートのFILTER関数を使うことで、表の中から指定した値の結果を抽出することができます。

F列の輪菊(白)が抽出できました。

FILTER関数であいまい検索ができない?

このfilter関数であいまい検索をしようとしても、そのままでは結果がうまく返ってきません。アスタリスクで出来ないかな?と、試しても、エラー(一致するものはありません)で返ってきます。

=FILTER(estimate_quantity_flower!A:K,estimate_quantity_flower!F:F="輪菊*")

この際に、あいまい検索を実現する方法です。

FIND関数を組み合わせる

[rml_read_more]

ここで、FIND関数を組み合わせます。

=FILTER(estimate_quantity_flower!A:K,FIND("輪菊",estimate_quantity_flower!F:F))

FIND 関数は、指定した文字列 (“輪菊”) が estimate_quantity_flower シートの F 列に存在する位置を返します。

FIND("輪菊",estimate_quantity_flower!F:F)

FIND 関数は、指定した文字列が見つからない場合はエラーを返すため、この式全体では、F 列に “輪菊” という文字列が含まれている行のみがフィルタリングされます。

結果として、この式は estimate_quantity_flower シートの A 列から K 列までの範囲で、F 列に “輪菊” という文字列が含まれている行のみを返します。

あいまい検索で結果が返って来ました!

まとめ

FIND関数をFILTER関数と組み合わせると「含む」に変わりました。

なぜFIND関数の返り値でこうなるのか…?が今のところ謎ですが、FILTER関数とFIND関数を組み合わせることでフィルターのあいまい抽出が可能になります。

御参考ください。

会員登録するとご利用できます。
Kindle Unlimited 会員は無料で購読できます
購読はこちら
Kindle Unlimited 会員は無料で購読できます
購読はこちら