プルダウンリスト、1段階で満足していませんか?
Excelで入力作業を効率化する方法として、プルダウンリスト(ドロップダウンリスト)は定番中の定番ですよね。セルをクリックするだけで選択肢が出てくるので、わざわざ文字を手入力しなくて済むし、打ち間違いも防げてとっても便利です。
でも、こんなふうに思ったことありませんか?
「支店名を選ぶとき、エリアごとに表示を分けられたらもっと使いやすいのに…」
実はそれ、できます。しかも“3段階”まで連動させることが可能なんです!
たとえば——
- 「関東エリア」を選んだら、東京・神奈川・千葉といった関東の支店名だけが表示され、
- さらに「東京支店」を選べば、その支店の担当者だけが表示される
……というふうに、入力内容に応じて次のリストが変わる。これが3段階プルダウンリストです。
この仕組みを使えば、複数の担当者・部署・製品名などを扱う場面で、入力スピードがぐんと上がり、選択ミスも激減します。
「でも難しそう…」と思うかもしれませんが、やってみると案外シンプル。Excelの「名前定義」と「INDIRECT関数」をうまく使えば、誰でも作れます!
ステップ1|連動リスト用の元データを作成する
3段階のプルダウンリストを作るには、まず元データをしっかり準備しておくことが一番大切です。ここがきちんとできていれば、あとがスムーズに進みますよ!
🔹準備する項目は3つ
今回の例では、以下の3つの情報を使います:
| エリア | 支店名 | 担当者名 |
|---|---|---|
| 関東 | 東京 | 坂本 |
| 関東 | 東京 | 山田 |
| 関東 | 神奈川 | 中村 |
| 関西 | 京都 | 佐藤 |
| 関西 | 大阪 | 高橋 |
このように、エリアごとに支店があり、支店ごとに担当者がいる構成になっています。Excelではこれをそれぞれ別の表に整理するのがポイントです。
🧩おすすめの表の作り方(3段階構成)
【① エリア → 支店】の関係
1つ目の表は、エリアごとの支店名をまとめたものです:
| 関東 | 関西 |
|---|---|
| 東京 | 京都 |
| 神奈川 | 大阪 |
💡このように、エリア名を1行目に置いて列ごとに支店を並べると、後で範囲名の定義がしやすくなります。
【② 支店 → 担当者】の関係
2つ目の表では、支店名ごとに担当者を縦に並べます:
| 東京 | 神奈川 | 京都 | 大阪 |
|---|---|---|---|
| 坂本 | 中村 | 佐藤 | 高橋 |
| 山田 |
💡支店名を1行目にして、縦に担当者を入力しておきましょう。空白でもOK!
🔍名前の付け方でミスしにくくなるコツ
- 「支店名」はひらがな・カタカナ・漢字でもOKですが、後で定義名として使う場合はExcelのルールに注意が必要です。
- たとえば「東京(営業)」のような記号やスペースは避け、「東京営業」や「東京_営業」といった形式にしておくとエラーになりにくくなります。

次は、ここで作った元データを使って「範囲名の定義」を行います。これが連動リストの核になるので、しっかり確認していきましょう!
ステップ2|範囲名を定義してエリアごとの支店を認識させる
元データが準備できたら、次にやることは**「エリアごとに支店のグループ」をExcelに覚えさせる作業**です。
これを「名前の定義」といいます。
この設定をしておくと、「関東」と入力されたら、Excelが「関東に属する支店は東京と神奈川だな」と理解してくれるようになります!
🔧名前の定義を簡単に行う方法
エリア→支店の関係を定義するには、以下の手順で操作します。
【手順①】エリア別の支店リストを範囲選択する
たとえば、以下のような表があるとします:
| A列(関東) | B列(関西) |
|---|---|
| 東京 | 京都 |
| 神奈川 | 大阪 |
このA1〜B3の範囲をまるごと選択してください。
(※エリア名が1行目、支店名が2行目以降に並んでいる状態)
【手順②】「数式」タブ →「選択範囲から作成」
- Excelの上部にある「数式」タブをクリック
- 「名前の管理」の隣にある「選択範囲から作成」を選択
- ダイアログが出たら「上端行」だけにチェックを入れて「OK」
✅これで何が起きているの?
ここまでやると、Excelが自動的にこう理解してくれます:
- 「関東」という名前 → 「東京」「神奈川」のセル範囲を指している
- 「関西」という名前 → 「京都」「大阪」のセル範囲を指している
つまり、エリア名が**範囲名(名前付きセル)**として登録されたことになります!
💡名前の定義を確認したいときは?
- 「数式」タブ内の「名前の管理」を開くと、定義済みの名前が一覧で表示されます。
- ここで「関東」や「関西」があるかチェックしてみましょう。
- 範囲に間違いがあれば編集も可能です。

この名前の定義がうまくできていれば、次のステップで「INDIRECT関数」による連動プルダウンが可能になります!
ステップ3|支店と担当者にも範囲名を設定
ここまでで、「エリア」から「支店」への連動ができる準備は整いましたね。
続いては、支店名を選ぶと、その支店の「担当者リスト」が表示されるようにする設定です。
やることは先ほどと同じで、支店名ごとに担当者の範囲を名前付きで定義していきます!
🔹元データの形式を再確認
以下のような支店名ごとの担当者リストがあるとします:
| 東京 | 神奈川 | 京都 | 大阪 |
|---|---|---|---|
| 坂本 | 中村 | 佐藤 | 高橋 |
| 山田 |
この表では、1行目に支店名を、2行目以降に担当者名を入れています。
🛠 名前の定義(支店→担当者)を行う手順
【手順①】範囲を選択
上の表のA1〜D3のように、支店名と担当者を含む範囲をまとめて選択します。
【手順②】「選択範囲から作成」を使って一括定義
- Excelの「数式」タブをクリック
- 「選択範囲から作成」を選択
- 今回は「左端列」ではなく「上端行」にチェックを入れて「OK」
✅これでどうなるの?
- 「東京」= 坂本、山田
- 「神奈川」= 中村
- 「京都」= 佐藤
- 「大阪」= 高橋
……というように、支店名がそのまま“名前付き範囲”として登録されました。
⚠名前のルールに注意!
Excelでは名前付き範囲に以下のような制限があります:
- スペースや記号は使えない(例:「東京 営業」はNG)
- 日本語はOK(漢字・ひらがなも使用可)
- アルファベットで始まるとより安全(応用時)
👉記号を含む支店名は、アンダーバーなどで置き換えるといいですよ(例:「東京_営業」)
💡定義ミスをチェックしたいときは?
- 「数式」タブ →「名前の管理」で、各支店名が正しく登録されているか確認できます。
- 名前をクリックすれば、どのセル範囲が紐づいているかがわかります。

これで、「支店」を選べば、それに応じた「担当者」を選べるようにする準備が整いました!
ステップ4|エリアのプルダウンリストを作成する
ここからはいよいよ、実際の入力セルにプルダウンリストを設定していくステップです。
まずは最上位の「エリア」の選択肢をプルダウンで選べるようにしましょう!
📝プルダウンを設定したいセルを選ぶ
まず、エリアを入力したい列(またはセル範囲)を選択します。
たとえば、D列のセルにエリアを入力したい場合は、D2〜D100など、想定される範囲を選んでおくと便利です。
🔧プルダウンリストを設定する手順
- Excel上部の「データ」タブをクリック
- 「データの入力規則」を選択
- ダイアログボックスが表示されるので、
- 「入力値の種類」を「リスト」に設定
- 「元の値」の欄に、以下のようにエリア名をカンマ区切りで入力
関東,関西
※エリアが増える場合は「東北,東海,九州」など自由に追加可能です。
- OKをクリックすると、選択したセルにプルダウンが表示されるようになります!
✅ここでのポイント
- 「元の値」欄にはセル参照を使わず、直接テキストで入力するのが確実です。
- スペースを入れるとリストが正しく表示されないことがあるので、「関東 , 関西」ではなく「関東,関西」と入力しましょう。
💡複数のエリアを管理する場合は?
今後エリアが追加される予定があるなら、「別シートにエリア一覧を用意して名前を定義する」という方法もありますが、まずはカンマ区切り入力で十分対応できます。

これで、ユーザーがエリアをプルダウンで選べるようになりました。
次は、この「エリアの選択」に応じて支店リストを動的に変える設定を行います!
ステップ5|INDIRECT関数で支店を連動表示
ここからが3段階プルダウンの“キモ”となる部分です。
エリアごとに支店名を切り替えるには、**「INDIRECT(インダイレクト)関数」**を使います!
この関数を使うことで、「関東」と選ばれたときに関東に紐づけた範囲(=支店一覧)を呼び出すことができるんです。
📌INDIRECT関数ってなに?
簡単に言うと、セルの中に書かれている「文字列」を“名前付き範囲”として認識してくれる関数です。
たとえば、セルA2に「関東」と入力されていて、Excel側で「関東」という範囲が定義されていれば、
=INDIRECT(A2)
と書くことで、A2が指す「関東」という名前付き範囲を参照できます。
🛠 支店のプルダウン設定手順
【前提】
エリア(例:D2セル)を選んだあと、支店を選ぶセル(例:E2セル)にプルダウンを設定します。
【手順①】支店用のセル範囲を選択
たとえば、E2〜E100など、支店を選ばせたいセル範囲を選択します。
【手順②】「データの入力規則」を開く
- Excel上部「データ」タブ → 「データの入力規則」をクリック
- 「入力値の種類」を「リスト」に設定
- 「元の値」に以下のようにINDIRECT関数を入力:
=INDIRECT(D2)
※D2がエリア入力セルを指すように設定してください。
範囲全体に一括適用する場合も、**セル参照は相対参照($を付けない)**にしておくのがポイントです!
【手順③】OKをクリックして完了!
これで、たとえば「関東」とエリアを選ぶと、関東エリアの支店(東京・神奈川)だけが表示されるプルダウンになります!
✅絶対参照・相対参照の注意点
=INDIRECT($D$2)← これは常にD2固定になるので、複数行で使うと正しく動きません。=INDIRECT(D2)← 相対参照にしておくことで、D3にはE3、D4にはE4…と、自動で対応できます。
💡入力エラーを防ぐならIFERRORと組み合わせてもOK!
以下のようにすれば、万が一エリアが未入力でもエラーになりません:
=IFERROR(INDIRECT(D2), "")

これで、「エリア → 支店」の連動が完成しました!
あとは、「支店 → 担当者」の連動も、同じやり方で設定するだけです。
ステップ6|さらにその下、担当者も支店に連動
いよいよ3段階目!
ここでは「支店」を選んだら、その支店に所属する「担当者名」だけがプルダウンで出てくるようにします。
やることはステップ5とほとんど同じ。参照するセルが“支店”になるだけです。
🛠 担当者のプルダウン設定手順
【前提】
- エリアをD列、支店をE列、担当者をF列に入力する場合で進めます。
- 担当者名を設定したいのは F列(例:F2〜F100) です。
【手順①】担当者を入力するセル範囲を選択
たとえば、F2〜F100まで範囲選択します。
【手順②】「データの入力規則」を開く
- 「データ」タブ → 「データの入力規則」をクリック
- 「入力値の種類」を「リスト」に設定
- 「元の値」に次のように入力します:
=INDIRECT(E2)
※E2は「支店名」が入力されるセルですね。
【手順③】OKを押して完了!
これで、支店名に応じてその支店に所属する担当者だけが選べるプルダウンリストが完成します!
たとえば:
- 関東 → 東京 → 坂本、山田
- 関西 → 京都 → 佐藤
というように、連動してリストが切り替わります✨
✅支店名の定義ミスがあると出ないことも
もし支店名にスペースや記号、全角・半角の違いがあると、INDIRECT関数が正しく動きません。
対策としては:
- 元データと完全に一致させる(コピペ推奨)
- 不安なときは名前の定義を「数式」→「名前の管理」で確認
💡エラー防止のIFERRORパターン
支店が未入力のときにエラー表示が出るのを防ぐなら、こちらのように書き換えるとスムーズです:
=IFERROR(INDIRECT(E2), "")
🎉これで3段階連動のプルダウンが完成!
- エリアを選べば、その地域の支店が出る
- 支店を選べば、その支店の担当者が出る

こんなふうに、一つの選択が次の選択肢を絞り込むことで、入力の手間もミスもグッと減らせます!
まとめ|3段階連動で作業効率が段違いに!
ここまで、Excelで「エリア → 支店 → 担当者」と3段階で選択肢が切り替わる連動プルダウンリストの作り方をご紹介してきました。
このテクニックを使えば、次のようなメリットが手に入ります:
✅ 入力のスピードが格段にアップ
✅ 選択ミス・誤入力のリスクを大幅に削減
✅ 誰が見ても使いやすい入力シートにできる
💡応用すれば、こんな使い方も!
- 製品カテゴリー → 商品名 → 型番
- 学部 → 学科 → 担当教員
- 都道府県 → 市区町村 → 支所名
などなど、あらゆる階層データの管理に応用可能です!
🧪設定がうまくいかないときのチェックポイント
- 名前の定義は正しくできているか?
- INDIRECT関数の参照セルに**$マーク(絶対参照)**がついていないか?
- セルに全角スペースや記号が含まれていないか?
- 対象の範囲名はExcelの命名ルールに合っているか?

少しのミスでうまく動かないこともあるので、1つずつ丁寧に確認してみてくださいね。
よくある質問(FAQ)
- QINDIRECT関数を使っているのに、プルダウンが表示されません…
- A
範囲名と参照セルの値が一致しているか確認してみてください。
特に以下の点に注意です:
- 「東京営業」などの支店名にスペースや記号があるとNG
- 範囲名には全角文字や記号、先頭の数字は使えない(ルールに沿った名前を!)
- INDIRECT関数に使うセル参照が絶対参照($付き)になっていないか確認
- Qプルダウンのリストが空欄になってしまいます。原因は?
- A
元のデータに空白セルが含まれている、または範囲がズレている可能性があります。
「名前の定義」で登録された範囲が正しく選ばれているか、「名前の管理」から確認してみましょう。
特に横並びのリストは、列を増やしたときに範囲がズレやすいので要注意です。
- Q支店や担当者の数が変わったら、設定をやり直さないといけませんか?
- A
名前の定義を“動的範囲”にしておくと自動更新できます。
たとえば「テーブル機能」や「OFFSET関数」を使えば、追加や削除に強い構成が可能です。
ただし設定が少し複雑になるので、まずは基本形をしっかりマスターしてからがおすすめです。







※当サイトはアフィリエイト広告を利用しています。リンクを経由して商品を購入された場合、当サイトに報酬が発生することがあります。
※本記事に記載しているAmazon商品情報(価格、在庫状況、割引、配送条件など)は、執筆時点のAmazon.co.jp上の情報に基づいています。
最新の価格・在庫・配送条件などの詳細は、Amazonの商品ページをご確認ください。