
Excelで「都道府県を選ぶと、市区町村の選択肢が自動で切り替わる」ような入力フォームを作りたいと思ったことはありませんか?
これは「連動プルダウン(依存ドロップダウン)」と呼ばれるテクニックで、INDIRECT関数と名前定義を組み合わせて実現できます。
この記事では、都道府県と市区町村を例にして、実際に使える連動型プルダウンの作り方をわかりやすく解説します。
動画の方が流れがわかりやすく感じることもあります。よろしければご覧ください。
目次
連動プルダウンとは?
- 1つ目の選択肢(親)によって、2つ目の内容(子)が切り替わる仕組み
- よくある例:都道府県 → 市区町村、部署 → 担当者、カテゴリ → 商品名
事前準備:データの構成を作る
まず、「都道府県」と「市区町村リスト」を以下のように用意します。
都道府県リスト | 市区町村リスト |
---|---|
北海道 | 札幌市、旭川市、函館市 |
東京都 | 新宿区、渋谷区、世田谷区 |
大阪府 | 大阪市、堺市、東大阪市 |
※この後に実データを提供します
ステップ①:都道府県のプルダウンを設定

手順
- 「データ入力」のセル範囲(例:A2:A10)を選択
- データ → データの入力規則 → 「リスト」選択
- 「元の値」に都道府県リストの一覧セル範囲を指定(例:
=A2:A4
)
ステップ②:市区町村のリストに名前定義を設定

名前の定義とは?
- 各都道府県に対応する市区町村リストに同じ名前を定義します(例:「北海道」→
札幌市,旭川市,...
)。
設定方法
- 市区町村が入力されている範囲(B列〜)を選択
- 数式タブ → 名前の定義
- 名前に都道府県名と同じ名前を設定(例:「北海道」)
ステップ③:INDIRECT関数で連動させる

手順
- 市区町村の入力セルを選択
- 入力規則 →「リスト」→「元の値」に次のように入力
=INDIRECT(A2)
(A2には都道府県が入力されている前提)
動作確認:切り替えができるかテスト
- 都道府県を変えると、自動的に市区町村リストが切り替わる
- 名前定義と都道府県の表記が完全一致していないと動作しないため注意
よくある質問(FAQ)
Q. 市区町村の名前定義がうまくいきません。
→ 空白や全角スペースが含まれていないか確認しましょう。
Q. 都道府県を空白にするとエラーになります。
→ IFERROR
や事前の入力チェックで対応可能です。
Q. 大量の都道府県と市区町村を扱いたい場合は?
→ スプレッドシート関数やPower Queryの活用も検討できます。
まとめ
- Excelの連動プルダウンはINDIRECT関数と名前定義で実現できる
- 都道府県・市区町村のような親子関係のデータ入力に最適
- 名前の表記ミスがないよう、データを整理しておくのが成功のコツ

最後までお読みいただきありがとうございます。
コメント
※ コメントは確認後に公開されます。反映まで少し時間がかかる場合があります。