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

Excel でドロップダウンリストを検索可能にするを使う究極のガイド

著者Siluvia変更日

Excel でドロップダウンリストを作成すれば、データ入力が効率化され、エラーも最小限に抑えられます。しかし、データセットが大きくなると、長いリストをスクロールするのは面倒ですよね。アイテムを素早く検索するために、ただタイプするだけで済んだら、どれほど楽でしょう?「ドロップダウンリストを検索可能にする」機能は、まさにこの利便性を実現します。本ガイドでは、Excel でそのようなリストを設定する4 つの方法をご紹介します。

検索可能なドロップダウンリスト



動画:ドロップダウンリストを検索可能にするを作成

 


Excel でのドロップダウンリストを検索可能にする 365

Excel 365 は、待望の機能をデータ検証ドロップダウンリストに導入しました。その機能とは、リスト内検索です。この検索対応型リストにより、ユーザーはアイテムをより素早く、効率的に見つけて選択できます。通常どおりドロップダウンリストを挿入した後、リストが設定されたセルをクリックして入力を開始するだけで、リストが即座に入力内容に一致するようフィルターされます。

ここでは、セルにSanと入力すると、ドロップダウンリストがSanで始まる都市(例:サンフランシスコサンディエゴ)に絞り込まれます。その後、マウスで候補から選択するか、矢印キーで目的の項目を選んで Enter キーを押してください。

Excel 365 の検索可能なドロップダウンリスト

注記
  • ドロップダウンリストでは、各項目の先頭文字から検索が始まります。入力した文字がどの項目の先頭文字にも一致しない場合、その文字に該当する項目はリストに表示されません。
  • この機能は、Excel 365 の最新バージョンでのみご利用いただけます。
  • お使いのExcel のバージョンがこの機能をサポートしていない場合は、ドロップダウンリストを検索可能にするKutools for Excelの機能をおすすめします。Excel のバージョン制限はなく、有効にすれば、関連するテキストを入力するだけでドロップダウンリスト内から目的の項目を簡単に検索できます。詳細な手順を表示

ドロップダウンリストを検索可能にするを作成(Excel 2019 以降向け)

Excel 2019 またはそれ以降のバージョンをご利用であれば、このセクションで紹介する方法で、Excel のドロップダウンリストを検索可能にできます。

Sheet1 の A2:A8 範囲(左側の画像)にあるデータを使って、すでに Sheet2 のセル A2 にドロップダウンリストを作成済みであるものとします(右側の画像)。以下の手順に従って、このリストを検索可能にしてください。

 サンプルデータ

手順 1:検索アイテムを一覧表示するヘルパー列を作成

ここでは、ソースデータに一致するアイテムを一覧表示するためのヘルパー列が必要です。この例では、ヘルパー列をD 列Sheet1に作成します。

  1. D 列の最初のセルD1を選択し、「検索結果」などの列見出しを入力してください。
  2. セル D2 に次の数式を入力し、Enter キーを押します。
    =FILTER(A2:A8,ISNUMBER(SEARCH(Sheet2!A2,A2:A8)),"Not Found")
     検索項目を一覧表示するヘルパー列を作成
注記
  • この数式では、A2:A8がソースデータの範囲です。Sheet2!A2はドロップダウンリストの位置を示しており、つまりドロップダウンリストが Sheet2 の A2 セルにあることを意味します。実際のデータに合わせて、これらの参照を適宜変更してください。
  • Sheet2 の A2 セルにあるドロップダウンリストから項目が選択されていない場合、数式は上記の画像のようにソースデータのすべての項目を表示します。一方、項目が選択されている場合は、D2 セルにその項目が数式の結果として表示されます。
手順 2:ドロップダウンリストを再構成
  1. ドロップダウンリストを設定したいセルを選択します(ここでは Sheet2 の A2 セルを選択)。次に、データ > データの入力規則 > データの入力規則を選択します。
     [データ] > [データの入力規則] > [データの入力規則] をクリック
  2. データの入力規則ダイアログボックスで、次のように設定します。
    1. 設定タブで、 選択ボタン ソースボックス内のボタンをクリックします。
       選択ボタンをクリック
    2. データの入力規則ダイアログボックスが Sheet1 に切り替わったら、ステップ1 で数式を含むセル(例:D2)を選択し、記号を追加して、閉じるボタンをクリックします。
       数式を含むセルを選択し、# 記号を追加
    3. エラーアラートタブで、無効なデータが入力された後にエラーアラートを表示するチェックボックスのチェックを外し、最後にOKボタンをクリックして変更を保存します。
       [無効なデータが入力された場合にエラー アラートを表示する] チェックボックスのチェックを外す
結果

Sheet2 のセル A2 のドロップダウンリストは、これで検索可能になりました。セルにテキストを入力してドロップダウン矢印をクリックすると、リストが即座にそのテキストに一致する項目だけに絞り込まれます。

ドロップダウンリストが検索可能になりました

注記
  • この方法はExcel 2019 以降のバージョンでのみ使用できます。
  • この方法は一度に1 つのドロップダウンリストセルにしか適用できません。Sheet2 の A3~A8 セルそれぞれでドロップダウンリストを検索可能にするには、前述の手順を各セルごとに繰り返す必要があります。
  • ドロップダウンリストのセルにテキストを入力しても、リストは自動では展開されません。手動でドロップダウンの矢印をクリックして展開してください。

すべての Excel バージョンで簡単にドロップダウンリストを検索可能にするを作成

上記の方法にはさまざまな制限があるため、ここでは非常に効果的なツールをご紹介します。Kutools for Excelドロップダウンリストを検索可能・自動ポップアップ化機能です。この機能はすべてのExcel バージョンでご利用いただけ、簡単な設定でドロップダウンリストから目的のアイテムをサッと検索できます。

Kutools for Excel をダウンロード・インストールした後Kutools > ドロップダウンリスト > ドロップダウンリストを検索可能・自動ポップアップ化を選択して、この機能を有効化します。「ドロップダウンリストを検索可能にする」ダイアログボックスで、以下の操作を行います。

  1. ドロップダウンリストを検索可能にするとして設定する必要のあるドロップダウンリストを含む範囲を選択します。
  2. OKをクリックして、設定を完了しましょう。
    Kutools の検索可能なドロップダウンリスト
結果

制限された範囲内のドロップダウンリストのセルをクリックすると、右側にリストボックスが表示されます。テキストを入力するとリストが即座に絞り込まれ、アイテムをクリックして選択するか、矢印キーで選択してEnterキーを押すと、セルに入力されます。

注記
Kutools for Excelは、複雑なタスクを効率化する300 以上の高度な機能を提供し、創造性と生産性を高めます。AI 機能を統合し、Kutools は正確にタスクを自動化して、データ管理を簡単にします。Kutools for Excel の詳細。。。         無料トライアル。。。

コンボボックスと VBA を使用してドロップダウンリストを検索可能にするを作成(やや複雑)

特定のドロップダウンリストタイプを指定せずに単純にドロップダウンリストを検索可能にするを作成したい場合、このセクションでは代替手段として、VBA コード付きのコンボボックスを使用する方法を紹介します。

下のスクリーンショットのように列 A に国名のリストがあり、これを検索可能なドロップダウンリストのソースデータとして使いたい場合は、以下の手順で実現できます。

サンプルデータ

ワークシートには、データ検証のドロップダウンリストではなくコンボボックスを挿入する必要があります。

  1. リボンに開発タブが表示されていない場合は、以下の手順で開発タブを有効化できます。
    1. Excel 2010 以降のバージョンでは、ファイルオプションをクリックします。Excel のオプションダイアログボックスが開いたら、左側のペインからリボンのユーザー設定をクリックします。「リボンのユーザー設定」リストボックスで、開発のチェックボックスをオンにして、OKボタンをクリックしてください。スクリーンショットを参照:
       [開発] タブを有効にする手順
    2. Excel 2007 では、Officeボタン>Excel のオプションをクリックします。Excel のオプションダイアログボックスで、左側のペインから全般をクリックし、リボンに開発タブを表示するチェックボックスをオンにして、最後にOKボタンをクリックします。
      Excel 2007 で [開発] タブを有効にする手順
  2. 開発タブを表示したら、開発 > 挿入 > コンボボックスをクリックします。
     [開発] > [挿入] > [コンボ ボックス] をクリック
  3. ワークシートにコンボボックスを描画し、右クリックしてショートカットメニューからプロパティを選択します。
    コンボ ボックスを描画し、右クリックして [プロパティ] を選択
  4. プロパティダイアログボックスで、以下の操作を行ってください。
    1. FalseAutoWordSelectフィールドで選択してください。
    2. LinkedCellフィールドにセルを指定します。この例では、A12 を入力してください。
    3. 2 - fmMatchEntryNoneMatchEntryフィールドで選択します。
    4. DropDownListListFillRangeフィールドに入力してください。
    5. プロパティダイアログボックスを閉じてください。スクリーンショットを参照:
       [プロパティ] ダイアログ ボックスでオプションを設定
  5. 次に、開発 > デザインモードをクリックして、デザインモードをオフにします。
  6. C2 などの空白セルを選択し、以下の数式を入力してEnter キーを押します。その後、オートフィルハンドルを C9 セルまでドラッグして、同じ数式をセルに自動入力します。スクリーンショットを参照してください:
    =--ISNUMBER(IFERROR(SEARCH($A$12,A2,1),""))
     数式を適用
    1. $A$12は、ステップ4 でLinkedCellとして指定したセルです。
    2. 上記の手順を完了したら、テストできます:コンボボックスに文字「C」を入力すると、文字「C」を含むセルを参照している数式セルが数字1 で塗りつぶされることが確認できます。
  7. セル D2 を選択し、以下の数式を入力してEnter キーを押します。その後、オートフィルハンドルを D9 セルまでドラッグします。
    =IF(C2=1,COUNTIF($C$2:C2,1),"")
     別の数式を適用
  8. セル E2 を選択し、以下の数式を入力してEnter キーを押します。その後、オートフィルハンドルを E9 セルまでドラッグして同じ数式を適用します。
    =IFERROR(INDEX($A$2:$A$9,MATCH(ROWS($D$2:D2),$D$2:$D$9,0)),"")
     3 番目の数式を適用
  9. 次に、名前付き範囲を作成します。数式 > 名前の定義をクリックしてください。
    [数式] > [定義名] をクリック
  10. 新しい名前ダイアログボックスで、DropDownList名前ボックスに入力し、参照範囲ボックスに以下の数式を入力し、OKボタンをクリックします。
    =$E$2:INDEX($E$2:$E$9,MAX($D$2:$D$9),1)
    
     [新しい名前] ダイアログ ボックスでオプションを指定
  11. 次に、開発 > デザインモードをクリックして、デザインモードをオンにします。その後、コンボボックスをダブルクリックすると、Microsoft Visual Basic for Applicationsウィンドウが開きます。
  12. 以下の VBA コードをコードエディターにコピー&ペーストします。
    以下の VBA コードをコード エディターにコピーして貼り付け
    VBA コード:ドロップダウンリストを検索可能にする
    Private Sub ComboBox1_GotFocus()
    	ComboBox1.ListFillRange = "DropDownList"
    	Me.ComboBox1.DropDown
    End Sub
  13. Alt+Qキーを押すと、Microsoft Visual Basic for Applicationsウィンドウが閉じます。

今後、コンボボックスに文字を入力すると、ファジィ検索が実行され、関連する値がリストに表示されます。

検索可能なドロップダウンリスト

注記今後も VBA コードを使い続けるには、このブックを Excel マクロ有効ブックとして保存する必要があります。

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

Kutools for Excel - あなたを群衆の中から際立たせます

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

Kutools for Excel は300 以上の機能を備えており、必要なものが常にワンクリックで利用できるようになっています。。。


Office Tab - Microsoft Office(Excel を含む)でタブを使った読み書きを可能にします

  • 開いている数十のドキュメントを1 秒で切り替え!
  • 毎日数百回のマウスクリックを削減して、マウスによる手首の悩みともさよならしましょう。
  • 複数のドキュメントを表示・編集する際の生産性が50%向上します。
  • Chrome、Edge、Firefox のように、Office(Excel を含む)にも効率的なタブ機能をもたらします。