【Excel】プルダウンを連動させる、自動入力にする方法

エクセルで1つ目のプルダウンを選択すると2つ目のプルダウンが絞り込まれる、2段階のプルダウンを作成する方法をご紹介します。1つ目のプルダウンを選択すると、隣のセルが自動入力されるようにする方法も解説しているので、ぜひ参考にしてみてください。

スポンサーリンク

連動プルダウンの作り方

エクセルで連動するプルダウンを作成する方法

まずシートの空いている部分に、プルダウンのリストを作成します。

1列目のアイテムの下に、連動して呼び出す2列目のアイテムを並べてください。例のように縦方向に作成しておくと、列を非表示にして隠すのに便利です。

リストを隠す場合、列記号を選択して右クリックメニューから[非表示]を選択します。

エクセルで連動するプルダウンを作成する方法

次にリストの2列目のアイテム範囲に、1列目のアイテムの名前をつけます。

数式タブの[選択範囲から作成]を開き、[上端行]にチェックを入れて[OK]を押してください。

例えば[キャベツ、タマネギ、ジャガイモ、トマト]の範囲には、「野菜」の名前がつきます。

リストを横方向に作成した場合は、[左端列]にチェックを入れます。

エクセルで連動するプルダウンを作成する方法

1列目のプルダウンを挿入する範囲を選択し、データタブから[データの入力規則]を開きます。

エクセルで連動するプルダウンを作成する方法

入力値の種類から[リスト]を選び、元の値に1列目のアイテムの範囲を指定してください。

1列目の範囲がプルダウンで、「野菜」または「果物」を選択できるようになります。

エクセルで連動するプルダウンを作成する方法

2列目のプルダウンを挿入する範囲を選択し、データタブから[データの入力規則]を開きます。

入力値の種類から[リスト]を選び、元の値には[=INDIRECT(A2)]を入力してください。セル参照(A2)の部分は、1列目のプルダウン範囲の先頭のセルを指定します。

INDIRECT関数は1列目の文字列を受け取り、同じ名前の範囲を呼び出します。

INDIRECT関数の構成要素:(参照文字列, [参照形式])

エクセルで連動するプルダウンを作成する方法

[元の値 はエラーと判断されます。]が表示されるので、[はい]を選択します。

これは1列目が未選択の時点で、INDIRECT関数の引数が空欄になるためです。

1列目のプルダウンを選択すると、2列目には1列目で選択したアイテムと同じ名前の範囲が呼び出され、リストとして表示されます。

スポンサーリンク

プルダウンに連動して自動入力する方法

エクセルでプルダウンに連動して自動入力する方法

1列目のプルダウンを選択すると、隣のセルに自動で値が入るようにします。基本的にVLOOKUP関数を使う方法がお勧めですが、選択肢が少ない場合はIF関数を使う方法もあります。

VLOOKUP関数で自動入力する方法

エクセルでプルダウンに連動して自動入力する方法

まずシートの空いている部分に、抽出する値のリストを作成しておきます。

リストから値を抽出する数式は、VLOOKUP(A2,$D$2:$E$5,2,FALSE) です。 VLOOKUP関数は範囲の1列目を検索し、検索値と一致する行を指定した列から返します。

このときプルダウンが未選択だと、検索値が存在しないためエラーになります。

VLOOKUP関数の構成要素:(検索値, 範囲, 列番号, [検索方法])

エクセルでプルダウンに連動して自動入力する方法

エラーを非表示にするには、VLOOKUP関数の返り値をIFERROR関数の値に指定します。

これを数式にすると IFERROR( VLOOKUP(A2,$D$2:$E$5,2,FALSE),””) です。VLOOKUP関数は検索値が空白のときエラーを返すので、プルダウンが未選択のとき空白を返します。

IFERROR関数の構成要素:(値, エラーの場合の値)

IF関数で自動入力する方法

エクセルでプルダウンに連動して自動入力する方法

IF関数に複数の条件を指定するには、偽の場合の値にIF関数を入れ子します。

例えば選択肢が2つなら、IF(A2=”もも”,300,IF(A2=”ばなな”,100,””)) です。未選択の場合は2つ目のIF関数の偽の場合の値に当てはまるので、空白を返します。

Microsoft 365 またはExcel 2019 以降のバージョンの場合、IFS関数が使えます。

IF関数の構成要素:(論理式, 真の場合の値, 偽の場合の値)

タイトルとURLをコピーしました