エクセルで検索システムを作る方法|FILTER関数・マクロなし(無料)

エクセルで検索システム(検索窓)を作る方法|FILTER関数で部分一致・マクロなし(無料テンプレート)

エクセルで「キーワードを入れると、一致する行が一覧で出る」検索システム(検索窓)は、FILTER関数と SEARCH関数を組み合わせた式を1つ入れるだけで作れます。マクロ(VBA)は使いません。キーワードを書き換えると、結果がすぐに切り替わります。

この記事では、商品リストを部分一致で検索するテンプレート(無料)と、その式のしくみを、実際の画面で説明します。FILTER関数は Microsoft 365 と Excel 2021 以降で使えます。

練習用Excelファイル(無料ダウンロード)
「検索」シートのキーワード欄に商品名の一部を入れると、「商品リスト」シートから一致する商品が一覧で表示されます(文房具15品目の記入例入り・架空のデータ)。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り
目次

検索システムの使い方

1
「検索」シートのキーワード欄(B3)に、探したい商品名の一部を入れます。
エクセルの検索システムでペンを検索した結果
①「ペン」と入れると、②商品名に「ペン」を含む4件(ボールペン・シャープペンシル・蛍光ペン)が表示されました。
2
キーワードを変えると、結果がすぐに切り替わります。
エクセルの検索システムでA4を検索した結果
①「A4」にすると、②A4の商品4件に切り替わりました。小文字の「a4」でも同じ結果になりました。
3
一致する商品がないときは、「見つかりません」と表示されます。
エクセルの検索システムで見つからないときの表示
①一致しないキーワードを入れると、②「見つかりません」と表示されます。

検索システムの作り方

1. 元のデータをテーブルにする

「商品リスト」シートの表の中を選び、Ctrl+T でテーブルにします。テーブル名は「テーブルデザイン」タブで「商品」にしています。テーブルにしておくと、商品を追加しても式を直す必要がありません。

2. 結果の左上のセルに FILTER関数を入れる

エクセルの検索システムのFILTER関数の式
①結果を表示する左上のセル(A7)に、FILTER関数の式を1つだけ入れます。
=IF(B3="","キーワードを入れてください",FILTER(商品,ISNUMBER(SEARCH(B3,商品[商品名])),"見つかりません"))
部分意味
SEARCH(B3,商品[商品名])商品名の中にキーワードがあれば、その位置(数字)を返す。なければエラー
ISNUMBER(…)数字なら TRUE(=キーワードを含む)
FILTER(商品,…,"見つかりません")TRUE の行だけを取り出す。1件もなければ「見つかりません」
IF(B3="","キーワードを入れてください",…)キーワードが空のときのメッセージ

式は A7 に1つ入れるだけで、結果が下と右に自動で広がります(スピル)。FILTER関数のくわしい使い方はFILTER関数の使い方で説明しています。

3. 見つかった件数を表示する

=IF(B3="","",COUNTIF(商品[商品名],"*"&B3&"*"))

「*」は「何文字でもよい」という意味のワイルドカードです。前後に付けると、キーワードを含む商品名の数を数えられます。

検索の注意点(実際に確かめた結果)

キーワード結果理由
a4(小文字)A4 と同じ4件SEARCH関数は大文字・小文字を区別しない
A4(全角)0件全角と半角は別の文字として扱われる
(空白)「キーワードを入れてください」IF関数で空のときを分けている

全角・半角を気にせず検索したいときは、元のデータとキーワードを ASC関数で半角にそろえる方法があります(全角・半角の変換)。

うまくいかないときの確認表

症状考えられる原因対処
「#スピル!」と表示される結果を出す範囲に、ほかのデータが入っているA7 の下と右のセルを空にする。
「#NAME?」と表示されるFILTER関数がない古いExcelMicrosoft 365 か Excel 2021 以降で使う。
追加した商品が出てこない元の表がテーブルになっていない元の表を Ctrl+T でテーブルにする。
練習用Excelファイル(無料ダウンロード)
キーワードを入れるだけで部分一致の検索ができます。「商品リスト」シートを自分のデータに書き換えて使えます。
Excelファイル(.xlsx)/登録不要/数式・練習データ入り

あわせて読みたい:検索・抽出の関連記事

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次