Excelで「1つ目のプルダウンを選ぶと、2つ目のプルダウンに表示される項目も変わる」という仕組みを作りたいことがあります。
たとえば、最初に「営業部」「総務部」「開発部」から部署を選び、その選択に応じて次のプルダウンに所属する担当者だけを表示するような使い方です。
通常のプルダウンでは、あらかじめ決めた候補をそのまま表示します。しかし、選択内容によって次の候補を切り替えられるようにすると、入力する人が不要な項目を選ぶ必要がなくなります。
このような仕組みは、部署と担当者、都道府県と市区町村、商品カテゴリーと商品名など、実務でも幅広く利用できます。
この記事では、Excelの「データの入力規則」と「名前の定義」を利用して、1つ目の選択内容に応じて2つ目のプルダウンを連動させる方法を解説します。
✅ Excelで連動するプルダウンを作る仕組み
「連動するプルダウン」と聞くと、複雑なマクロやVBAが必要だと思うかもしれません。実際には、基本的な構成であればVBAを使わずに作成できます。ただし、最初のプルダウンと2つ目のプルダウンには、それぞれ別の役割があります。ここを理解せずに設定すると、「2つ目の候補が切り替わらない」「どの項目を選んでも同じ候補が表示される」といった状態になりがちです。
特に重要なのが、2つ目のプルダウンが参照する範囲を、1つ目の選択結果に応じて切り替える考え方です。単純にセル範囲を指定するだけでは、選択内容と候補を連動させることはできません。また、候補を保存する場所と、実際に選択するセルを分けておくと、後から設定を確認しやすくなります。
まずは「何を連動させるのか」を整理してから設定すると、途中で迷いにくくなります。
・連動するプルダウンの基本的な構成
今回は、次のような例で作成します。
- 1つ目のプルダウン:部署
- 2つ目のプルダウン:担当者
- 部署を選ぶと、その部署に所属する担当者だけを表示
たとえば、候補データを次のように用意します。
| 部署 | 担当者 |
|---|---|
| 営業部 | 田中 |
| 営業部 | 佐藤 |
| 営業部 | 鈴木 |
| 総務部 | 高橋 |
| 総務部 | 山田 |
| 開発部 | 伊藤 |
| 開発部 | 中村 |
別の場所には、1つ目のプルダウンに表示する部署名を用意します。
| 部署一覧 |
|---|
| 営業部 |
| 総務部 |
| 開発部 |
そして、入力用のセルを次のようにします。
- A2:部署を選択
- B2:担当者を選択
この場合、A2で「営業部」を選択したら、B2には「田中」「佐藤」「鈴木」だけを表示させます。
「総務部」を選べば、B2には「高橋」「山田」だけが表示される仕組みです。
・連動するプルダウンで名前の定義を使う理由
この方法では、部署ごとの担当者リストに名前を付けます。
たとえば、営業部の担当者がセルD2に入っている場合、その範囲を「営業部」という名前で登録します。
同じように、総務部の担当者範囲には「総務部」、開発部の担当者範囲には「開発部」という名前を付けます。
このようにすると、1つ目のプルダウンで選択された文字列を、そのまま参照先の名前として利用できます。
ここで使うのが「INDIRECT関数」です。
INDIRECT関数は、文字列として指定した内容をセル参照として扱える関数です。Excelでは、定義された名前を参照する用途にも利用できます。
そのため、A2に「営業部」と入力されている場合、B2の入力規則で
=INDIRECT(A2)
と指定すると、「営業部」という名前を付けた範囲を参照する構成にできます。
この仕組みが、連動するプルダウンの重要なポイントです。
なお、まず通常のプルダウンメニューを作成する方法から確認したい場合は、基本的な設定手順をこちらの記事で詳しく解説しています。
→ 【Excel】プルダウンメニューを作成する方法|入力ミスを防ぎ作業効率を大幅に高める基本操作
✅ Excelで連動するプルダウン用のデータを準備する
実際に設定を始める前に、候補となるデータを整理します。ここでデータの配置を適当にすると、後から名前を付けるときに分かりにくくなります。特に注意したいのは、1つ目の候補と2つ目の候補を同じ考え方で管理しないことです。部署の一覧は「親となる選択肢」、担当者の一覧は「選択結果によって切り替える候補」として分けて考えます。この区別ができていないと、データの入力規則を設定する段階で「どの範囲を指定すればよいのか」が分からなくなります。
また、担当者を追加した場合にどこへ入力するのかも、あらかじめ決めておくことが重要です。連動する仕組みは、設定そのものよりも「候補データをどのように整理するか」で使いやすさが大きく変わります。まずは小さなサンプルで仕組みを確認してから、実際の業務データへ応用するとトラブルを減らせます。
・部署ごとに候補リストを分ける
今回は、別シートに候補リストを用意する方法で考えます。
たとえば「リスト」というシートを作成し、次のように配置します。
A列:部署一覧
- A1:部署
- A2:営業部
- A3:総務部
- A4:開発部
C列:営業部の担当者
- C1:営業部
- C2:田中
- C3:佐藤
- C4:鈴木
D列:総務部の担当者
- D1:総務部
- D2:高橋
- D3:山田
E列:開発部の担当者
- E1:開発部
- E2:伊藤
- E3:中村
このように、部署ごとに担当者の範囲を分けておきます。
この時点では、まだ連動するプルダウンにはなっていません。ここから、それぞれの範囲に名前を設定していきます。
・名前の定義で担当者リストを登録する
次に、部署名と担当者リストを結び付けます。
まず営業部の担当者が入力されているC2を選択し、「営業部」という名前を定義します。
- 「リスト」シートでC2を選択します。
- Excel上部にある「名前ボックス」をクリックします。
- 「営業部」と入力します。
- Enterキーを押して確定します。
同じように、総務部と開発部についても設定します。
- 総務部の担当者範囲を選択します。
- 名前ボックスに「総務部」と入力します。
- Enterキーを押します。
- 開発部の担当者範囲についても同じ操作を行います。
これで、
- 「営業部」→営業部の担当者範囲
- 「総務部」→総務部の担当者範囲
- 「開発部」→開発部の担当者範囲
という関係が作られます。
Excelでは、ドロップダウンリストの元データを名前の定義で管理する方法も利用できます。Microsoftも、リストを含む範囲に名前を定義する方法を案内しています。
ここまでできれば、連動するプルダウンを作るための準備は完了です。
次は、実際に入力用セルへ1つ目のプルダウンを設定し、その選択結果を使って2つ目のプルダウンを切り替える設定を行います。
✅ Excelで1つ目の選択に応じてプルダウンを切り替える方法
ここまでで、部署ごとの担当者リストを準備し、それぞれに名前を設定しました。ここからが、実際に「連動するプルダウン」を完成させる設定です。最初のプルダウンだけなら、通常の入力規則と同じように設定できます。しかし、2つ目のプルダウンでは、単純に担当者の範囲を指定するだけでは不十分です。重要なのは、1つ目のセルで選択した内容を、2つ目のプルダウンの参照先として利用することです。
たとえばA2で「営業部」を選択した場合、B2では営業部に登録した担当者リストを表示します。A2を「総務部」に変更すれば、B2の候補も総務部の担当者へ切り替わります。この設定を理解しておけば、部署と担当者だけでなく、カテゴリーと商品、都道府県と市区町村など、さまざまな場面へ応用できます。
では、実際の設定を順番に確認していきましょう。
・1つ目のプルダウンを設定する
まず、部署を選択するA2セルにプルダウンを設定します。
- A2セルを選択します。
- 「データ」タブをクリックします。
- 「データの入力規則」をクリックします。
- 「設定」タブで「入力値の種類」を「リスト」にします。
- 「元の値」に部署一覧の範囲を指定します。
- 「OK」をクリックします。
たとえば部署一覧が「リスト」シートのA2にある場合、元の値にはその範囲を指定します。
これでA2をクリックすると、「営業部」「総務部」「開発部」から選択できるようになります。
この時点では、まだB2との連動は発生しません。A2はあくまで「次に表示する候補を決めるためのセル」として機能します。
・2つ目のプルダウンにINDIRECT関数を設定する
次に、B2セルへ担当者のプルダウンを設定します。
- B2セルを選択します。
- 「データ」タブをクリックします。
- 「データの入力規則」をクリックします。
- 「入力値の種類」で「リスト」を選択します。
- 「元の値」に次の数式を入力します。
=INDIRECT(A2)
- 「OK」をクリックします。
これで、A2に入力された部署名と同じ名前を持つ範囲がB2の候補として参照されます。
たとえばA2が「営業部」なら、B2には「営業部」という名前を付けた範囲の内容が表示されます。
A2を「総務部」に変更すると、B2では「総務部」という名前の範囲が参照されるため、総務部の担当者へ候補が切り替わります。
つまり、次のような関係になります。
A2の選択内容 → 名前の定義 → B2の候補
ここが連動するプルダウンの中心的な仕組みです。
・連動するプルダウンが動作するか確認する
設定が完了したら、実際に候補が切り替わるか確認します。
- A2のプルダウンをクリックします。
- 「営業部」を選択します。
- B2のプルダウンをクリックします。
- 営業部に登録した担当者が表示されることを確認します。
- A2を「総務部」に変更します。
- B2のプルダウンを開きます。
- 総務部の担当者へ候補が切り替わることを確認します。
たとえば、
「営業部」→「田中・佐藤・鈴木」
だったものが、
「総務部」→「高橋・山田」
へ切り替われば正常です。
このように、1つ目のプルダウンを変更するだけで2つ目の候補が変わるため、入力する人が関係のない項目を選択する必要がなくなります。
✅ Excelの連動するプルダウンが切り替わらない原因
連動するプルダウンは、一度設定すると便利ですが、少しでも名前や参照先がずれていると正常に動作しません。特に多いのが、「1つ目の選択肢」と「名前の定義」の文字が一致していないケースです。見た目では同じように見えても、余計なスペースが入っていたり、名前の設定が間違っていたりすると参照できません。
また、2つ目の入力規則で INDIRECT の参照先を間違えると、候補が表示されなくなります。設定した直後は、まず小さなサンプルで動作確認しておくことが大切です。うまくいかない場合は、数式そのものだけを見るのではなく、「1つ目のセル」「名前の定義」「2つ目の入力規則」の3カ所を順番に確認すると原因を見つけやすくなります。
・1つ目の選択肢と名前の定義が一致しているか確認する
たとえばA2に「営業部」と表示されていても、名前の定義が「営業」となっていれば一致しません。
次のような状態では連動できません。
- A2:「営業部」
- 名前の定義:「営業」
この場合は、A2の値と名前の定義を同じ文字列にします。
また、名前の定義にはExcelで使用できない文字や形式があるため、特殊な名称を設定する場合は注意が必要です。
・2つ目の入力規則の数式を確認する
B2の「データの入力規則」を開き、「元の値」が正しく設定されているか確認します。
基本形は、
=INDIRECT(A2)
です。
A2ではなく別のセルを参照していたり、セル位置がずれていたりすると、期待した候補が表示されません。
複数行へ設定する場合は、どのセルを参照させるのかも重要になります。
たとえばA2とB2、A3とB3をそれぞれ連動させたい場合、単純に同じ数式をコピーすると意図した参照にならないことがあります。
入力する行が増える場合は、相対参照・絶対参照の違いも確認しておきましょう。
・1つ目を変更しても2つ目に残った値に注意する
連動するプルダウンには、もう一つ注意点があります。
たとえば最初に、
「営業部」→「田中」
と選択したとします。
その後、A2を「総務部」に変更した場合、B2に以前選択した「田中」が残っていても、自動的に「高橋」などへ変更されるわけではありません。
つまり、
「現在の候補」と「すでに入力されている値」は別に考える必要があります。
B2に「田中」が残った状態でA2だけ「総務部」に変更すると、部署と担当者の組み合わせが不正になる可能性があります。
そのため、実務では「1つ目の選択を変更したら、2つ目の選択も確認する」という運用が重要です。
連動設定だけでなく、通常のプルダウン自体が表示されない場合は、入力規則や設定状態など別の原因が考えられます。矢印が表示されない、クリックしても候補を選択できないといった場合は、以下の記事で原因と対処法を確認してください。
→ 【Excel】プルダウンが表示されない原因|矢印が出ない・選択できない場合の対処法
✅ Excelの連動プルダウンを実務で活用する方法
連動するプルダウンは、単なる入力補助ではありません。選択肢を絞り込むことで、入力ミスを減らしたり、入力する人が迷う時間を減らしたりできます。
特に、選択肢が多いExcelでは効果を発揮します。部署と担当者だけでなく、「商品カテゴリー→商品名」「都道府県→市区町村」「分類→詳細項目」などにも応用できます。
一方で、候補データが頻繁に増減する場合は、名前の定義を固定範囲で管理するとメンテナンスが必要になります。その場合は、テーブルなどを組み合わせて候補範囲を管理する方法も検討するとよいでしょう。
・商品カテゴリーと商品名を連動させる例
たとえば商品管理表で、
- パソコン
- モニター
- 周辺機器
というカテゴリーを1つ目のプルダウンにします。
そして、カテゴリーを選択すると、それに対応した商品名だけを2つ目に表示します。
「パソコン」を選べばパソコン関連の商品だけ、「モニター」を選べばモニター関連の商品だけが候補になります。
商品数が多い場合でも、最初にカテゴリーを選択してから商品を選べるため、長い候補一覧から探す必要がなくなります。
・都道府県と市区町村を連動させる例
住所入力でも同じ考え方を利用できます。
1つ目で都道府県を選び、2つ目でその都道府県に対応する市区町村を選択する形式です。
このような入力フォームでは、2つ目の候補をすべて表示すると一覧が長くなってしまいます。
最初の選択で候補を絞り込むことで、入力する人が必要な項目を見つけやすくなります。
ただし、実際の住所データは項目数が多いため、手作業でリストを管理する場合は更新作業の負担も考慮する必要があります。
連動するプルダウンを作成した後、さらに「候補を追加したときもプルダウンの範囲を自動で広げたい」という場合は、別の設定が必要になります。項目追加に合わせてプルダウンの範囲を自動更新する方法については、以下の記事で詳しく解説しています。
→ 【Excel】プルダウンを自動更新する方法|項目追加で範囲を自動拡張
✅ Excelで連動するプルダウンを使うときの注意点
連動するプルダウンは便利ですが、すべてのケースで単純に名前の定義を増やせばよいわけではありません。
特に候補数が多い場合や、頻繁に項目が追加される場合は、管理方法まで考えておく必要があります。最初は問題なく動いていても、担当者の追加や部署名の変更によって参照先がずれることがあります。
また、プルダウンを設定したセルをコピーしたり、別のシートへ移動したりする場合にも、入力規則の参照先を確認することが大切です。「作れたから終わり」ではなく、「後から変更しても管理できるか」という視点を持つと、実務で使いやすいExcelになります。特に複数人が編集するファイルでは、候補リストをどこに置いているのかを分かりやすくしておくことも重要です。
・候補データを分かりやすく管理する
候補リストは、入力用シートとは分けて管理すると扱いやすくなります。
たとえば「入力」シートには利用者が操作するセルだけを配置し、「リスト」シートには部署や担当者などの候補データをまとめます。
こうしておけば、入力画面がすっきりするだけでなく、候補を変更するときにも対象の場所を探しやすくなります。
また、名前の定義を複数作った場合は、どの名前がどの範囲を参照しているのかを定期的に確認すると安心です。
・候補の追加が多い場合は管理方法を見直す
部署や担当者が頻繁に増える場合、固定された範囲を使い続けるとメンテナンスが必要になります。
たとえば営業部に新しい担当者を追加したのに、名前の定義が以前の範囲のままだと、新しい担当者がプルダウンに表示されないことがあります。
この点は「プルダウンの連動」と「候補範囲の自動更新」を分けて考えることが重要です。
連動そのものは正常でも、元となる候補リストの範囲が更新されていなければ、新しい項目は候補に入りません。
候補が頻繁に増えるExcelでは、リストの管理方法も合わせて設計すると、後からの修正作業を減らせます。
なお、プルダウンに新しい選択肢を追加する方法については、候補リストの編集方法も含めて別の記事で詳しく解説しています。既存のプルダウンへ項目を追加したい場合は、こちらも参考にしてください。
→ 【Excel】プルダウンメニューに項目を追加する方法|実務で使えるデータ入力を効率化テクニック
✅ まとめ:Excelの連動するプルダウンを使いこなそう
Excelの連動するプルダウンは、1つ目の選択内容に応じて2つ目の候補を切り替える便利な入力方法です。
今回のポイントを整理すると、次のとおりです。
- 1つ目のプルダウンを「親となる選択肢」として設定する
- 2つ目には、選択結果に対応する候補リストを用意する
- 名前の定義を使って候補範囲を管理する
INDIRECT関数で1つ目の選択内容と2つ目の候補を連動させる- 1つ目の選択を変更したときは、2つ目に残った値にも注意する
- 実務では「部署→担当者」「カテゴリー→商品」など幅広く応用できる
- 候補が増える場合は、リストの管理方法も合わせて考える
単純なプルダウンでは候補が多すぎて選びにくい場合でも、連動させることで必要な項目だけを表示できます。
まずは「部署→担当者」のような小さなデータで試して、仕組みを理解してから実際のExcelファイルへ応用してみるとよいでしょう。