Excelで検索可能なデータベースを作成する2つの簡単な方法
大きなMicrosoft Excelのワークシートを扱っていると、特定のデータを素早く検索したい場面がよくあります。Excelで検索可能なデータベースを作成すれば、目的の情報にすぐアクセスでき、作業時間の大幅な節約にもつながります。この記事では、FILTER・ISNUMBER・SEARCH関数を組み合わせる方法と、VBAコードを使う方法という、2つの実用的な手法をわかりやすい図解付きで解説します。
Excelで検索可能なデータベースを作成する2つの方法
ここでは、「Armani School and College」の複数の学生情報が入力された大きなワークシートを例にします。列Bには学生名、列Cには学籍番号(ID)、列Dには取得したCGPAが記録されています。このデータセットをもとに、関数を使った方法とVBAを使った方法の2通りで検索可能なデータベースを作成していきます。まずは今回使用するデータセットの全体像をご覧ください。

方法1:FILTER・ISNUMBER・SEARCH関数を組み合わせて検索可能なデータベースを作成する
まずは、FILTER・ISNUMBER・SEARCHの3つの関数を組み合わせて、ドロップダウンリストから検索できるデータベースを作成します。以下の手順に沿って進めてみましょう。
📌 ステップ1:
- 「Filter」という名前のシートで、セルE5を選択します。

- セルE5を選択したら、次の数式を入力します。
=FILTER(B5:B16,ISNUMBER(SEARCH(Database!B4,B5:B16)),"Not Found")
- 数式内のSEARCH関数は、指定された値を検索します。
- ISNUMBER関数は、SEARCH関数の結果が数値であればTRUEを返し、そうでなければFALSEを返します。
- FILTER関数は、指定した条件に基づいてデータを抽出(フィルタリング)します。

- あとはキーボードのEnterキーを押すだけで、目的の結果が表示されます。

📌 ステップ2:
- 次に、「Database」シートのセルB4を選択し、以下のメニューへ移動します。
データ → データツール → データの入力規則

- データの入力規則ダイアログボックスで「設定」タブを開き、「入力値の種類」欄のドロップダウン矢印からリストを選択します。
- 続いて「元の値」欄に、次の数式を入力します。
=Filter!$E$5#
- その後、「エラーメッセージ」タブへ移動します。

- 「無効なデータが入力されたらエラーメッセージを表示する」のチェックを外し、OKをクリックします。

- これで検索可能なデータベースの完成です。セルB4に何か文字(例:「R」)を入力し、セル右下に表示されるドロップダウン矢印を選択すると、下のスクリーンショットのように関連する検索結果がすべて表示されます。

あわせて読みたい:Excelでデータベース関数を使う方法(具体例つき)
関連記事
- Excelでデータベースを作成する方法(8つの簡単なステップ)
- Excelで顧客データベースを管理する方法
- 自動更新されるデータベースをExcelで作成する方法
方法2:VBAコードを実行してGoogle検索風のデータベースを作成する
次に、ドロップダウン矢印を選択しなくても、Google検索のように入力と同時に候補が表示される検索機能を作りたい場合の手順を紹介します。
📌 ステップ1:
- まず、前の方法と同様にデータ → データツール → データの入力規則までの操作を行います。
- 続いて「Filter」シートのセルE5を選択し、数式 → 名前の管理を開きます。

- 名前の管理ウィンドウで「新規」をクリックします。

- 新しい名前ウィンドウで、名前をDropdown_Listに変更します。
- 「参照範囲」欄に次の数式を入力してOKをクリックします。この数式ではINDEX関数とCOUNTIF関数を使用しています。
=Filter!$E$5:$E$5:INDEX(States!$E$5:$E$17,COUNTIF(States!$E$5:$E$17,"?*"))

📌 ステップ2:
- 次に「Dropdown」シートへ移動し、開発タブから挿入 → コンボボックスを選択します。

- マウスをドラッグして、下図のようにコンボボックスのサイズを調整します。

- すると、次のような新しいコンボボックスが作成されます。

- コンボボックスを右クリックし、「プロパティ」を選択します。

- プロパティウィンドウで「アルファベット順」タブを開き、以下の項目を変更します。
AutoWordSelect >> False、LinkedCell >> B4、MatchEntry >> 2 – fmMatchEntryNone

- 次のコードをコピーします。
Private Sub ComboBox1_Change()
ComboBox1.ListFillRange = "Dropdown_List"
Me.ComboBox1.DropDown
End Sub
- その後、コンボボックスをダブルクリックすると、Microsoft VBAウィンドウの新しいモジュールが開きます。コピーしたコードを空白のモジュールに貼り付け、F5キーを押してコードを実行します。

- これで、検索可能なデータベースがGoogle検索のように動作するようになります。

あわせて読みたい:Excel VBAでシンプルなデータベースを作成する方法
注意点
👉 Alt + F11キーを同時に押すと、Microsoft Visual Basic for Applicationsウィンドウを表示できます。
👉 リボンに開発タブが表示されていない場合は、有効化できます。その際は以下のメニューへ移動してください。
ファイル → オプション → リボンのユーザー設定
👉 コンボボックスに文字を入力できるようにするには、開発タブの「デザインモード」を解除しておく必要があります。
まとめ
この記事では、VBAコードや関数を活用して検索可能なデータベースを作成する2つの実用的な方法を紹介しました。ぜひこれらのテクニックを自分のExcelスプレッドシートに取り入れて、日々の業務の生産性向上にお役立てください。ご不明な点や質問がある場合は、お気軽にコメントをお寄せください。
関連記事
- Excelで在庫管理データベースを作成する方法(3つの簡単な方法)
- フォームを使ってExcelにデータベースを作成する方法
- リレーショナルデータベースをExcelで作成する方法(簡単な手順)
-
Excelで図書館データベースを作成する方法|初心者向け簡単ステップ解説
Microsoft Excelは会計処理やデータ管理、予測分析などに使われることが多いソフトウェアですが、実は優れたデータベースソフトとしても活用できます。Excelはデータの入力・管理ツールとして非常に強力で、内蔵された機能を組み合わせれば、あらゆる種類のデータベースを簡単に構築できます。この記事では、Excelで図書館データベースを作成する方法と、フォームを使ってデータを入力する手順を詳しく解説します。 図書館データベースとは? データベースとは、電子的に保存され、必要に応じてアクセスできるように整理されたデータの集合体を指します。データの保存先は、ローカル環境でもオンラインのクラウド上
-
Excelのデータモデルからテーブルを削除する方法【2つの簡単な手順】
このチュートリアルでは、Excelのデータモデルからテーブルを削除するための2つの簡単な方法をご紹介します。どちらの方法も複雑な数式を使わずに実行できる、シンプルな操作です。また、記事の最後では、データモデルがまだない方向けに、データモデルへテーブルを追加する手順も解説します。 練習用ワークブックはこちらからダウンロードできます。 データモデルとは? Excelにおけるデータモデルとは、1つ以上の共通データ列(キー)を介して相互に関連付けられたデータテーブルのコレクションです。このテーブル群が集まることで、異なるワークシート上にある個々のテーブルにアクセスできる、より大規模なデータベースが形成