「都道府県を選ぶと、次のプルダウンに市区町村が出てくる」のように、1つ目の選択によって2つ目の選択肢が変わる仕組みを「連動プルダウン」と呼びます。
設定には、名前の定義とINDIRECT関数を使います。手順を順番に説明します。
連動プルダウンの仕組み
連動プルダウンは、次の3つを組み合わせて作ります。
- 1つ目のプルダウン:通常のリスト(例:果物、野菜)
- 名前の定義:選択肢の一覧に、1つ目の選択肢と同じ名前をつける
- 2つ目のプルダウン:INDIRECT関数で、1つ目で選んだ名前の一覧を参照する
1つ目の選択肢(果物)と同じ名前をつけた一覧を用意しておくと、INDIRECT関数が「果物」という文字から、同じ名前の一覧を探して表示します。
手順1:選択肢の表を用意して名前をつける

手順1|分類ごとの選択肢を、列ごとに入力する(A列に果物、B列に野菜など)

手順2|各列の選択肢だけ(見出しを除く)を選び、画面左上の名前ボックスに分類名を入力して Enter を押す

手順3|同じ手順を、すべての列で行う

手順2:1つ目のプルダウンを作る
1つ目のセル(例:E2)に、分類の一覧のプルダウンを作ります。「データの入力規則」で「リスト」を選び、元の値に「果物,野菜」と入力します。
手順3:2つ目のプルダウンをINDIRECT関数で作る
手順1|2つ目のセル(例:F2)を選び、「データの入力規則」を開く

手順2|「入力値の種類」を「リスト」にする

手順3|「元の値」に「=INDIRECT(E2)」と入力して「OK」をクリックする

=INDIRECT(E2)
E2で「果物」を選ぶと、F2のプルダウンに「りんご、みかん、ぶどう」が表示されます。E2を「野菜」に変えると、「にんじん、だいこん、ほうれん草」に切り替わります。
1つ目が空のときのエラー
E2が空欄の状態でF2のプルダウンを開くと、「元の値がエラーと判断されます」というメッセージが出ることがあります。1つ目を選んでから、2つ目を選ぶようにします。
うまく表示されないときの確認ポイント
- 名前が一致していない:1つ目の選択肢と、定義した名前が一字でも違うと動きません
- 名前にスペースや記号が入っている:名前には使えません。「果物」「野菜」のように短くします
- 範囲に見出しが含まれている:見出しまで選択肢に出てしまうので、定義の範囲から外します
- 参照セルがずれている:INDIRECTの引数は、1つ目のセル(E2)にします
- 別のブックの名前は使えない:同じブックの中に一覧を用意します
まとめ
- 連動プルダウンは、名前の定義とINDIRECT関数で作る
- 分類ごとの一覧に、1つ目の選択肢と同じ名前をつける
- 2つ目のプルダウンの元の値は「=INDIRECT(1つ目のセル)」
- 名前は一字一句同じにし、スペースや記号は使わない
- 1つ目を選んでから、2つ目を選ぶ
入力ミスを防ぎながら、詳しい分類まで選べる表が作れます。

コメント