KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel で検索ボックスを作成する – ステップバイステップガイド

著者Siluvia変更日

Excel で検索ボックスを作成すれば、特定のデータを素早くフィルターして簡単にアクセスでき、スプレッドシートの使い勝手がぐっと向上します。このガイドでは、Excel のさまざまなバージョンに対応した検索ボックスの実装方法をいくつかご紹介します。初心者から上級者まで、FILTER 関数や条件付き書式、その他の数式を活用して動的な検索ボックスを設定する手順をわかりやすく解説します。

Excel の動的検索ボックスのスクリーンショット


FILTER 関数で簡単に検索ボックスを作成

注:FILTER 関数はExcel 2019 以降のバージョンおよび Microsoft 365 向けExcel でご利用いただけます。
FILTER 関数を使用すると、データを動的に検索・フィルター処理する簡単な方法が得られます。FILTER 関数のメリットは次のとおりです。
  • この関数は、データが変更されると自動的に出力を更新します。
  • FILTER 関数は、設定した条件に一致するデータセット内のエントリー数に応じて、1 行から数千行まで柔軟に結果を返します。

ここでは、Excel の FILTER 関数を使って検索ボックスを作成する方法をご紹介します。

ステップ1: テキストボックスを挿入してプロパティを設定
ヒント:セルに直接入力して内容を検索できれば十分で、目立つ検索ボックスが不要な場合は、この手順をスキップして直接 ステップ2に進んでください。
  1. 「開発」タブに移動し、「挿入」>「テキストボックス(ActiveX コントロール)」をクリックしてください。
    ヒント:リボンに「開発」タブが表示されていない場合は、次のチュートリアルに従って有効化できます:Excel リボンで開発タブを表示する方法は?
    Excel の [開発] タブで、ActiveX テキスト ボックス用に [挿入] オプションが選択されているスクリーンショット
  2. カーソルが十字に変わったら、ワークシート上でテキストボックスを配置したい場所をドラッグして描画してください。描画後は、マウスボタンを離します。
    ワークシート上にテキスト ボックスを描画するように設定された Excel のカーソルのスクリーンショット
  3. テキストボックスを右クリックし、「プロパティ」をコンテキストメニューから選択してください。
    Excel でテキスト ボックスを右クリックして [プロパティ] メニューを開いているスクリーンショット
  4. 「プロパティ」ペインの「LinkedCell」フィールドにセル参照(例:「J2」)を入力すると、テキストボックスと該当セルが双方向で連動します。つまり、テキストボックスに入力した内容は自動的にセル J2 に反映され、逆にセル J2 の値を変更してもテキストボックスに即座に反映されます。
    Excel の [プロパティ] ウィンドウで LinkedCell フィールドに入力しているスクリーンショット
  5. 「開発」タブの「デザインモード」をクリックして、デザインモードを終了します。
    [設計モード] が選択された Excel の [開発] タブのスクリーンショット

これでテキストボックスに自由にテキストを入力できるようになりました!

ステップ2: FILTER 関数を適用
  1. FILTER 関数を使用する前に、元のヘッダー行を新しいエリアにコピーしておきましょう。ここでは、ヘッダー行を検索ボックスの下に配置しています。
    検索結果を表示するために検索ボックスの下にヘッダー行がコピーされている Excel のスクリーンショット
  2. 最初のヘッダーの下にあるセル(この例では I5)を選択し、次の数式を入力して「Enter」キーを押すと、結果が表示されます。
    =FILTER(Sheet2!$A$5:$G$281,Sheet2!$B$5:$B$281=J2,"No data found")
    検索入力に基づいてデータをフィルター処理するための FILTER 関数の数式が入力されている Excel のスクリーンショット
    上記のスクリーンショットに示されているとおり、テキストボックスに現在入力がないため、数式は I5 セルに「データが見つかりません」と表示します。
注記
  • この数式では:
    • "Sheet2!$A$5:$G$281":$A$5:$G$281 は、Sheet2 でフィルターを適用したいデータ範囲です。
    • 「Sheet2!$B$5:$B$281=J2」:この部分では、フィルター条件を定義しています。Sheet2 の列 B(行5~281)にある各セルが、セル J2 の値と一致するかどうかをチェックします。なお、J2 は検索ボックスにリンクされたセルです。
    • 「データが見つかりません」:FILTER 関数が、列 B の値がセル J2 の値と一致する行を1 つも見つけられなかった場合に表示されます。
  • この方法では大文字と小文字が区別されないため、入力時に大文字・小文字のどちらを使用しても、テキストが一致します。
結果: 検索ボックスをテスト

それでは、検索ボックスを試してみましょう。この例では、顧客名を検索ボックスに入力すると、該当する結果が即座に絞り込まれて表示されます。

入力に基づいて結果がフィルター処理され表示されている状態の検索ボックスのスクリーンショット


条件付き書式を使用するを使用して検索ボックスを作成

条件付き書式を使用すると、検索語に一致するデータをハイライト表示することで、間接的に検索ボックスのような効果を実現できます。この方法ではデータをフィルターしませんが、関連セルを視覚的に際立たせます。このセクションでは、Excel で条件付き書式を使って検索ボックスを作成する方法を説明します。

ステップ1: テキストボックスを挿入してプロパティを設定
ヒント:セルに直接入力して内容を検索できれば十分で、目立つ検索ボックスが不要な場合は、この手順をスキップして直接 ステップ2に進んでください。
  1. 「開発」タブに移動し、「挿入」>「テキストボックス(ActiveX コントロール)」をクリックしてください。
    ヒント:「開発」タブがリボンに表示されていない場合は、次のチュートリアルの手順に従って有効化できます:Excel リボンで開発タブを表示する方法は?
    検索ボックスを作成するために Excel の [開発] タブでテキスト ボックス オプションが選択されているスクリーンショット
  2. カーソルが十字に変わりますので、ワークシート上でテキストボックスを配置したい場所にドラッグしてテキストボックスを描画します。描画後、マウスボタンを離してください。
    検索入力用に配置するテキスト ボックスを描画している Excel のスクリーンショット
  3. テキストボックスを右クリックし、「プロパティ」をコンテキストメニューから選択してください。
    Excel の [プロパティ] メニューでテキスト ボックスがセルにリンクされているスクリーンショット
  4. 「プロパティ」ウィンドウの「LinkedCell」フィールドにセル参照(例:「J3」)を入力すると、テキストボックスと該当セルが双方向で連動します。つまり、テキストボックスに入力した内容は自動的にセル J3 に反映され、逆にセル J3 の値を変更してもテキストボックスに即座に反映されます。
    テキスト ボックスが Excel のセル J3 にリンクされている [プロパティ] ウィンドウのスクリーンショット
  5. 「開発」タブの「デザインモード」をクリックして、デザインモードを終了します。
    設計モードを終了するために Excel の [開発] タブで [設計モード] オプションがハイライトされているスクリーンショット

これでテキストボックスに自由にテキストを入力できるようになりました!

ステップ2: データ検索用の条件付き書式を使用するを適用
  1. 検索対象のすべてのデータ範囲を選択します。ここでは、範囲 A3:G279 を選択しています。
  2. 「ホーム」タブで、「条件付き書式を使用する」>「新しいルール」をクリックします。
    Excel の [ホーム] タブで [条件付き書式] → [新しいルール] オプションが選択されているスクリーンショット
  3. 「新しい書式設定ルール」ダイアログボックスで:
    1. 「ルールの種類の選択」オプションで、「数式を使用して書式設定するセルを決定する」を選択します。
    2. 「次の数式を満たす値の書式設定」ボックスに、以下の数式を入力してください。
      =$B3=$J$3
      ここで、「$B3」は「範囲を選択してください」内の検索条件と照合したい列の先頭セルを表し、「$J$3」は検索ボックスにリンクされたセルです。
    3. 「書式」ボタンをクリックして、検索結果に塗りつぶしの色を設定しましょう。
    4. 「OK」ボタンをクリックしてください。スクリーンショットをご参照ください。
      Excel の [新しい書式設定ルール] ダイアログ ボックスで条件付き書式用の数式が入力されているスクリーンショット
結果

それでは、検索ボックスをテストしてみましょう。この例では、検索ボックスに顧客名を入力すると、列 B に該当する顧客が含まれる行が即座に指定された塗りつぶし色でハイライト表示されます。

検索入力に基づいて一致する行をハイライト表示している検索ボックスの動作中のスクリーンショット

注:この方法は大文字・小文字を区別しないため、大文字または小文字で入力してもテキストが一致します。

数式の組み合わせで検索ボックスを作成する

Excel の最新バージョンをお使いでない場合や、強調表示された行の範囲に依存したくない場合は、このセクションで紹介する方法がぴったりです。Excel の数式を組み合わせることで、どのバージョンでも使える機能的な検索ボックスを簡単に作成できます。以下の手順に従ってください。

ステップ1: 検索列から一意な値のリストを作成
ヒント:新しい範囲内の一意の値は、最終的な検索ボックスで使用する条件となります。
  1. この例では、範囲「B4:B281」をコピーして新しいワークシートに貼り付けます。
  2. 新しいワークシートに範囲を貼り付けたら、そのデータを選択したまま「データ」タブに移動し、「重複の削除」をクリックしてください。
    Excel の [重複の削除] オプションのスクリーンショット
  3. 表示された「重複を削除」ダイアログボックスで、「OK」ボタンをクリックしてください。
    Excel の [重複の削除] ダイアログ ボックスのスクリーンショット
  4. 「Microsoft Excel」のプロンプトボックスが表示され、削除された重複データの件数が示されます。「OK」をクリックしてください。
    Excel の [重複の削除] 確認プロンプトのスクリーンショット
  5. 重複データを削除した後、ヘッダーを除くリスト内のすべての一意な値を選択し、「名前」ボックスに「Customer」と入力して、この範囲に名前を割り当てます。
    Excel の名前の割り当てダイアログ ボックスのスクリーンショット
ステップ2: コンボボックスを挿入してプロパティを設定
ヒント:セルに直接入力して内容を検索できれば十分で、目立つ検索ボックスが不要な場合は、この手順をスキップして直接 ステップ3に進んでください。
  1. 検索したいデータセットを含むワークシートに戻り、「開発」タブに移動して、「挿入」>「コンボボックス(ActiveX コントロール)」をクリックします。
    ヒント:「開発」タブがリボンに表示されていない場合は、次のチュートリアルの手順に従って有効化できます:Excel リボンで開発タブを表示する方法は?
    Excel でのコンボ ボックスの挿入のスクリーンショット
  2. カーソルが十字形に変わったら、ワークシート上で検索ボックスを配置したい場所をドラッグしてコンボボックスを描画し、マウスボタンを離してください。
    Excel ワークシート上に描画されたコンボ ボックスのスクリーンショット
  3. コンボボックスを右クリックし、表示されるコンテキストメニューから「プロパティ」を選択してください。
    Excel のコンボ ボックスのプロパティのスクリーンショット
  4. 「プロパティ」ウィンドウで:
    1. 「LinkedCell」フィールドにセル参照を入力して、コンボボックスをセルにリンクしましょう。ここでは「M2」と入力しています。
    2. 「ListFillRange」フィールドに、手順1 で一意のリストに対して指定した「セルの名前」を入力します。
    3. 「MatchEntry」フィールドを「2 – fmMatchEntryNone」に設定します。
    4. 「プロパティ」ペインを閉じる。
      Excel のコンボ ボックスのプロパティ ウィンドウのスクリーンショット
  5. 「開発」タブの「デザインモード」をクリックして、デザインモードを終了しましょう。
    Excel の設計モード終了ボタンのスクリーンショット

これで、コンボボックスから任意の項目を選択したり、テキストを入力して検索したりできるようになります。

ステップ3: 数式を適用
  1. 元のデータ範囲の隣に、ヘルパー列を3 つ作成します。スクリーンショットをご参照ください。
    Excel でのヘルパー列の設定のスクリーンショット
  2. 最初のヘルパー列の見出しの下にあるセル(H5)に、次の数式を入力し、「Enter」キーを押してください。
    =ROWS($B$5:B5)
    ここで「B5」は、検索対象列の最初の顧客名が含まれるセルです。
    ヘルパー列用に Excel で最初に入力された数式のスクリーンショット
  3. 数式セルの右下隅をダブルクリックすると、下のセルに同じ数式が自動的に入力されます。
    Excel で数式セルが自動的にフィルされているスクリーンショット
  4. 2 番目のヘルパー列の見出しの下にあるセル(I5)に、次の数式を入力して「Enter」キーを押してください。その後、数式セルの右下隅をダブルクリックすると、下のセルに同じ数式が自動的に入力されます。
    =IF(ISNUMBER(SEARCH($M$2,B5)),H5,"")
    ここでの「M2」はコンボボックスにリンクされたセルです。
    Excel でヘルパー列用に 2 番目に入力された数式のスクリーンショット
  5. 3 番目のヘルパー列の見出しの下にあるセル(J5)に、次の数式を入力して「Enter」キーを押します。その後、数式セルの右下隅をダブルクリックして、下のセルに同じ数式を自動的に入力します。
    =IFERROR(SMALL($I$5:$I$281,H5),"") 
    Excel でヘルパー列用に 3 番目に入力された数式のスクリーンショット
  6. 元のヘッダー行を新しい領域にコピーします。ここでは、ヘッダー行を検索ボックスの直下に配置しています。
    結果範囲用に Excel でコピーされたヘッダー行のスクリーンショット
  7. 最初のヘッダーの下にあるセル(この例では L5)を選択し、次の数式を入力して「Enter」キーを押してください。
    =IFERROR(INDEX($A$5:$G$281,$J5,COLUMNS($L$4:L4)),"")
    ここで「A5:G281」は、結果セルに表示したいすべてのデータ範囲です。
    Excel でヘッダーの下に入力された結果用の数式のスクリーンショット
  8. この数式セルを選択し、「フィルハンドル」を右方向にドラッグした後、さらに下方向にもドラッグして、対応する列と行に数式を適用します。
    Excel で結果範囲に適用された数式のスクリーンショット
    :
    • 検索ボックスに入力がないため、数式の結果には生データが表示されます。
    • この方法では大文字と小文字を区別しないため、入力時に大文字・小文字のどちらを使用してもテキストが一致します。
結果

それでは、検索ボックスをテストしてみましょう。この例では、コンボボックスから顧客名を入力または選択すると、列 B にその顧客名を含む行が即座にフィルターされ、結果範囲に表示されます。

Excel での最終的な検索ボックスの結果のスクリーンショット


Excel で検索ボックスを作成すれば、データとのインタラクションが大幅に向上し、スプレッドシートをより動的でユーザーフレンドリーなものにできます。FILTER 関数のシンプルさ、条件付き書式による視覚的な支援、あるいは複数の数式を組み合わせた柔軟性など、どの方法を選んでも、データ操作機能を強化する貴重なツールを手に入れられます。ご自身のニーズやデータの特性に最も合う手法を見つけるために、ぜひこれらのテクニックをお試しください。Excel の機能をさらに深く知りたい方には、当社ウェブサイトで豊富なチュートリアルをご用意しています。こちらでさらに多くのExcel のヒントとテクニックを発見しましょう


最高のオフィス生産性ツール

🤖KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気機能検索・ハイライトまたは重複をマーキング     空白行を削除する     列の結合またはデータを失うことなくセルを処理     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 VLookup     複数シート横断 VLookup      ファジーマッチ....
高度なドロップダウンリストドロップダウンリストを素早く作成     連動型ドロップダウンリスト     複数選択ドロップダウンリスト....
列マネージャー指定した数の列を追加列の移動非表示列の表示状態を切り替え範囲および列の比較...
注目の機能グリッドフォーカス     デザインビュー   強化された数式バー    ワークブックとシートマネージャー     リソースライブラリ(オートテキスト)  日付ピッカー     ワークシートの統合    暗号化/セルの復号化    リストからメール送信     スーパーフィルター      特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除、...)   50+チャートタイプガントチャート、...)   40+実用的数式誕生日に基づいて年齢を計算します、...)   19 挿入ツールQR コードを挿入パスから画像を挿入、...)   12 変換ツール単語に変換する為替レートの変換、...)   7 結合と分割ツール高度な行のマージセルの分割、...)。。。他にも多数
Kutools を好みの言語でご利用ください – 英語、スペイン語、ドイツ語、フランス語、中国語、および40+の他の言語をサポートしています!

Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、300 以上の高度な機能を搭載して生産性を大幅アップ。時間を大幅に節約します。必要な機能を今すぐ入手するには、こちらをクリック。。。


Office Tab が Office にタブインターフェースを導入し、作業を大幅に簡単にします

  • Word、Excel、PowerPoint でタブによる編集と読み取りを有効化、Publisher、Access、Visio、Project でも利用可能
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成したりできます。
  • 毎日の生産性を50%も向上させ、何百回ものマウスクリックを削減します!

Kutools アドインすべて。1 つのインストーラー

Kutools for Officeスイートには、Excel、Word、Outlook、PowerPoint 用のアドインに加え、Office アプリ間でシームレスに連携するチームに最適な Office Tab Pro も含まれています。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • 1 つのインストーラー、1 つのライセンス— 数分でセットアップ完了(MSI 対応)
  • 連携でさらに強力に— Office アプリ間で生産性を一貫して向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • ベストバリュー— 個別アドイン購入よりお得