Excelで動的な従属ドロップダウンリストを作成する(ステップバイステップ)
このチュートリアルでは、最初のドロップダウンリストで選択された値に基づいて選択肢を表示する従属ドロップダウンリストを作成する方法を、ステップバイステップで紹介します。言い換えれば、別のリストの値に基づいたExcelデータ検証リストを作成します。
動的な従属ドロップダウンリストの作成
便利なツールを使って10秒で従属ドロップダウンリストを作成する
Excel 2021、Excel 365、およびそれ以降のバージョンで動的な従属ドロップダウンリストを作成する
このチュートリアルに関するよくある質問
ビデオ: Excelで従属ドロップダウンリストを作成する
動的な従属ドロップダウンリストの作成
ステップ1:ドロップダウンリストの項目を入力する
まず、ドロップダウンリストに表示したい項目を入力します。各リストは別々の列に入力してください。
最初の列(製品)の項目は、後ほど従属リストのExcel名前として使用されます。例えば、ここでは「果物」と「野菜」がそれぞれB2:B5とC2:C6の名前になります。
スクリーンショットを見る:
次に、各データリスト用のテーブルを作成します。
範囲A1:A3を選択し、「挿入」→「テーブル」をクリックします。そして、「テーブルの作成」ダイアログで「テーブルにヘッダーがある」チェックボックスをオンにして、「OK」をクリックします。
この手順を繰り返して、他の2つのリスト用のテーブルも作成します。
すべてのテーブルと範囲への参照は、名前マネージャーで確認できます(「Ctrl」+「F3」で開きます)。
ステップ2:範囲名の作成
このステップでは、メインリストと各従属リストに「名前」を作成する必要があります。
1. メインリスト("A2:A3")に表示される項目を選択します。
2. 次に、「数式バー」の隣にある「名前ボックス」に移動します。
3. 名前を入力します。ここでは「Product」と名付けます。
4. 「Enter」キーを押して完了します。
上記の手順を繰り返して、各従属リストに個別に名前を作成します。
ここで、2番目の列(B2:B5)を「Fruit」、3番目の列(C2:C6)を「Vegetable」と名付けます。
すべての範囲名は、名前マネージャーで確認できます(「Ctrl」+「F3」で開きます)。
ステップ3:メインのドロップダウンリストを追加する
次に、メインのドロップダウンリスト(Product)を追加します。これは通常のデータ検証ドロップダウンリストであり、従属ドロップダウンリストではありません。
1. まず、テーブルを作成します。
セル("E1")を選択し、最初の列のヘッダー("Product")を入力し、次の列のセル("F1")に移動して、2番目の列のヘッダー("Item")を入力します。このテーブルにはドロップダウンリストが含まれます。
次に、これらの2つのヘッダー("E1"と"F1")を選択し、「挿入」タブをクリックして、「テーブル」グループから「テーブル」を選択します。
「テーブルの作成」ダイアログで、「テーブルにヘッダーがある」ボックスをオンにして、「OK」をクリックします。
2. メインのドロップダウンリストを挿入したいセル("E2")を選択し、「データ」タブをクリックして、「データツール」グループの「データの検証」→「データの検証」をクリックします。
3. 「データの検証」ダイアログで、
- 「許可」セクションで「リスト」を選択し、
- 以下の数式を「ソース」バーに入力します。「Product」はメインリストの名前です。
- 「OK」をクリックします。
=Product
これで、メインのドロップダウンリストが作成されました。
ステップ4:従属ドロップダウンリストを追加する
1. 従属ドロップダウンリストを追加したいセル("F2")を選択し、「データ」タブをクリックして、「データツール」グループの「データの検証」→「データの検証」をクリックします。
2. 「データの検証」ダイアログで、
- 「許可」セクションで「リスト」を選択し、
- 以下の数式を「ソース」バーに入力します。「E2」はメインのドロップダウンリストが含まれるセルです。
- 「OK」をクリックします。
=INDIRECT(SUBSTITUTE(E2," ","_"))
もしE2が空の場合(メインのドロップダウンリストで何も選択していない場合)、以下のようなメッセージがポップアップします。「はい」をクリックして続行します。
これで、従属ドロップダウンリストが作成されました。
ステップ5:従属ドロップダウンリストをテストする
1. メインのドロップダウンリスト("E2")で「Fruit」を選択し、次に従属ドロップダウンリスト("F2")で矢印アイコンをクリックして、果物の項目がリストにあるか確認し、従属ドロップダウンリストから1つの項目を選択します。
2. 「Tab」キーを押してデータ入力テーブルで新しい行を開始し、「Vegetable」を選択し、右側の次のセルに移動して、野菜の項目がリストにあるか確認し、従属ドロップダウンリストから1つの項目を選択します。
- メインのドロップダウンリスト(製品列)で項目が選択されていない場合、従属ドロップダウンリスト(アイテム列)は動作しません。
- 選択を変更した後に従属ドロップダウンリストの内容をリセットまたはクリアしたい場合は、この記事「Excelで選択を変更した後に従属ドロップダウンリストのセルをクリアするには?」をご覧ください。VBAコードを使用してクリアする方法を紹介しています。
- 3レベルのドロップダウンリストを作成したい場合は、この記事「Excelで多層の従属ドロップダウンリストを作成するには?」が役立ちます。
便利なツールを使って10秒で従属ドロップダウンリストを作成する
「Kutools for Excel」は、従属ドロップダウンリストをより簡単かつ迅速に作成するための強力なツールを提供します:
ステップ1:ドロップダウンリストの項目を入力する
まず、下のスクリーンショットのようにデータを配置します:
ステップ2:Kutoolsツールの適用
1. 作成したデータを選択し、「Kutools」タブをクリックして、「ドロップダウンリスト」を表示し、サブメニューから「動的ドロップダウンリスト」をクリックします。
2. 「従属ドロップダウンリスト」で:
- データモードに一致する「モードB」をチェックし、
- 「出力範囲」を選択します。出力範囲の列はデータ範囲の列と等しくなければなりません。
- 「OK」をクリックします。
これで、従属ドロップダウンリストが作成されました。
- 「モードB」は、ドロップダウンリスト内で第3レベル以上を作成することをサポートしています:
- データが下のスクリーンショットのように配置されている場合、「モードA」を使用する必要があります。これは2レベルの従属ドロップダウンリストの作成のみをサポートします。
- Kutoolsを使用して従属ドロップダウンリストを作成する詳細については、このチュートリアルをご覧ください。
Excel 2021、Excel 365、およびそれ以降のバージョンで動的な従属ドロップダウンリストを作成する
Excel 365、Excel 2021、またはそれ以降のバージョンを使用している場合、新しい関数「UNIQUE」と「FILTER」を使用して動的な従属ドロップダウンリストをすばやく作成する別の方法があります。
ソースデータがスクリーンショットのように配置されていると仮定して、以下の手順に従って動的なドロップダウンリストを作成してください。
ステップ1:メインのドロップダウンリスト用の項目を取得するための数式の使用
セルを選択します(例:セルG3)、UNIQUEおよびFILTER関数を使用して「製品」リストから一意の値を抽出します。これがメインのドロップダウンリストのソースとなります。「Enter」キーを押します。
=UNIQUE(FILTER(A3:A20, A3:A20<>""))
ステップ2:メインのドロップダウンリストの作成
1. メインのドロップダウンリストを配置したいセルを選択します(例:セル「D3」)。「データ」タブをクリックし、「データツール」グループの「データの検証」→「データの検証」をクリックします。
2. 「データの検証」ダイアログで、
- 「許可」セクションで「リスト」を選択し、
- 以下の数式を「ソース」バーに入力します。
- 「OK」をクリックします。
=$G$3#
これで、メインのドロップダウンリストが作成されました。
ステップ3:従属ドロップダウンリスト用の項目を取得するための数式の使用
セルを選択します(例:セルH3)、FILTER関数を使用して、セル「D3」(メインのドロップダウンリストで選択された項目)に基づいて項目をフィルタリングします。「Enter」キーを押します。
=FILTER(B3:B20, A3:A20=D3)
ステップ4:従属ドロップダウンリストの作成
1. 従属ドロップダウンリストを配置するセルを選択します(例:セル「E3」)。「データ」タブをクリックし、「データツール」グループの「データの検証」→「データの検証」をクリックします。
2. 「データの検証」ダイアログで、
- 「許可」セクションで「リスト」を選択し、
- 以下の数式を「ソース」バーに入力します。
- 「OK」をクリックします。
=$H$3#
これで、従属ドロップダウンリストが正常に作成されました。
新しい項目を追加したり、A3:A20で変更を行ったりすると、ドロップダウンリストは自動的に更新されます。
ドロップダウンリストをアルファベット順に並べ替える
ドロップダウンリストの項目をアルファベット順に並べ替えたい場合は、準備テーブルに以下の数式を使用できます。メインのドロップダウン(セルG3の数式)の場合:
=SORT(UNIQUE(FILTER(A3:A20, A3:A20<>"")))
従属のドロップダウン(セルH3の数式)の場合:
=SORT(FILTER(B3:B20, A3:A20=D3))
これで、両方のドロップダウンリストがアルファベット順(AからZ)に並べ替えられました。
アルファベット順(ZからA)に並べ替えるには、以下の数式を使用してください:
メインのドロップダウン(セルG3の数式)の場合:
=SORT(UNIQUE(FILTER(A3:A20, A3:A20<>"")), 1, -1)
従属のドロップダウン(セルH3の数式)の場合:
=SORT(FILTER(B3:B20, A3:A20=D3), 1, -1)
よくある質問:
1. 各データリストにテーブルを挿入する理由は何ですか?
データリストにテーブルを挿入することで、データリストの変更に基づいてドロップダウンリストを自動更新できます。たとえば、最初のデータリストに「その他」を追加すると、メインのドロップダウンリストにも自動的に「その他」が追加されます。
2. なぜテーブルを使用してドロップダウンリストを配置するのですか?
「Tab」キーを押してテーブルに新しい行を追加すると、新しい行にもドロップダウンリストが自動的に追加されます。
3. INDIRECT関数はどのように機能しますか?
INDIRECT関数は、テキスト文字列を有効な参照に変換するために使用されます。
4. 数式INDIRECT(SUBSTITUTE(E2&F2," ",""))はどのように機能しますか?
まず、SUBSTITUTE関数はテキストを別のテキストに置き換えます。ここでは、結合された名前(E2とF2)からスペースを削除するために使用されています。その後、INDIRECT関数は結合された内容(E2とF2によるテキスト文字列)を有効な参照に変換します。
最高のオフィス生産性ツール
🤖 | Kutools AI Aide:データ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データを分析してグラフを生成 | Kutools Functions を呼び出す… |
人気機能:重複の検索・ハイライト・マーキング | 空白行を削除 | データを失わず列やセルを統合 | 丸める ... | |
スーパーLOOKUP:複数条件VLOOKUP | 複数値VLOOKUP | 複数シートの検索 | ファジーマッチ .... | |
高度なドロップダウンリスト:すばやくドロップダウンリストを作成 | 依存型ドロップダウンリスト | 複数選択ドロップダウンリスト .... | |
列の管理:特定数の列を追加 | 列を移動 | 非表示列の表示状態を切り替え | 範囲と列の比較 ... | |
注目機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブック&ワークシートの管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リスト送信で電子メールを送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線でフィルタ...) | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など) | 50 種以上のグラフ タイプ(ガントチャートなど) | 40を超える実用的な 数式(誕生日に基づいて年齢を計算する、など) | 19種の 挿入ツール(QRコードの挿入、パスから画像の挿入など) | 12種類の 変換ツール(単語に変換する、通貨変換など) | 7つの 結合&分割ツール(高度な行のマージ、セルの分割など) | ...さらに多数 |
Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...
Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます
- Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
- 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
- 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!