Excelでプルダウンを使っていると、「選んだ内容に応じて隣のセルも自動で変わってくれればいいのに」と思う場面、かなりありますよね。
たとえば、商品名を選んだら価格や在庫が自動で出るようにしたいのに、毎回手入力していると入力ミスが起きる。提出直前に金額がズレていて、全部見直し…そんな経験、ありませんか。
実は、プルダウンと関数を組み合わせれば、この作業はほぼ自動化できます。しかも難しい設定は不要です。
プルダウン選択で隣のセルを連動させる基本のやり方(VLOOKUPを使う)

まず結論から言うと、「プルダウン+VLOOKUP」を組み合わせるのが最もシンプルで実務向きです。
プルダウンを選んでも隣が空白のままになる原因
商品名だけ選べる状態にして満足してしまい、データの参照元(マスタ)が用意されていないケースが多いです。
たとえば、営業資料を作っているときに商品名だけリスト化して、価格は別シートにある。この状態だと、Excelは何を参照すればいいのか分かりません。
実務で使うための具体的な設定手順
まずは次のような表を作ります。
| 商品名 | 価格 |
|---|---|
| A商品 | 1000 |
| B商品 | 2000 |
| C商品 | 3000 |
この表が「参照元」です。別シートでも構いません。
次に、入力シートでプルダウンを作ります。
- セルを選択
- データ → データの入力規則
- リストを選択
- 商品名の範囲を指定
ここまでで、プルダウンは完成です。
次に隣のセルに以下の関数を入れます。
=VLOOKUP(A2,シート名!A:B,2,FALSE)
実務でつまずくポイントと対処法
実際にやると、うまく表示されないことがあります。
よくあるのは以下です。
- 商品名のスペース違い(全角・半角)
- マスタに存在しない値
- 範囲指定ミス
現場では、マスタをコピーして使うだけでミスが激減しますよ。
IF関数を組み合わせて条件ごとに自動入力する方法

VLOOKUPだけでは対応できないケースもあります。特に「条件分岐したいとき」です。
特定の条件で別の値を表示できない原因
たとえば「A商品なら特別価格を出す」など、条件付きの処理をしたい場面です。
ここでIF関数が必要になります。
IF関数を使った具体的な設定方法
例えば以下のように設定します。
=IF(A2="A商品",800,VLOOKUP(A2,シート名!A:B,2,FALSE))
この式の意味はこうです。
- A商品なら800円を表示
- それ以外は通常価格をVLOOKUPで取得
現場でよくあるミスと改善方法
IF関数はネスト(入れ子)すると一気に複雑になります。
その場合は、無理にIFを増やすよりも「マスタを増やす」ほうが管理しやすいです。
つまり、
- 条件が増える → マスタで管理
- 単発の例外 → IFで対応
エラーを防ぐためにIFERRORを組み合わせる方法

実務では「#N/A」が出ると、そのまま提出できません。
エラーが出てしまう原因
例えば、プルダウンで空白を選んだときや、まだ入力していないときにVLOOKUPが動くと、必ずエラーになります。
提出前にこれが並んでいると、見た目も悪く、チェック工数も増えます。
IFERRORの具体的な使い方
以下のように書きます。
=IFERROR(VLOOKUP(A2,シート名!A:B,2,FALSE),"")
これでエラーが出た場合は空白になります。
実務では空白以外にも「未選択」と表示するケースもあります。
=IFERROR(VLOOKUP(A2,シート名!A:B,2,FALSE),"未選択")
こうすると、入力漏れにも気づきやすくなります。
実務での使い分け
IFERRORを使うと見た目は綺麗になりますが、エラーの原因が隠れるというデメリットもあります。
そのため、
- 社内用 → エラー表示のまま
- 提出用 → IFERRORで整形
複数の情報を連動させる方法

実務では、1つのプルダウンに対して複数の情報を連動させることがほとんどです。
1つしか連動できないと思い込んでしまう原因
VLOOKUPの列番号を固定してしまい、「1つの値しか取れない」と勘違いするケースがあります。
実務で使う具体的な設定
例えばマスタがこうなっているとします。
| 商品名 | 価格 | 在庫 |
|---|---|---|
| A商品 | 1000 | 50 |
| B商品 | 2000 | 30 |
価格を出す式
=VLOOKUP(A2,シート名!A:C,2,FALSE)
在庫を出す式
=VLOOKUP(A2,シート名!A:C,3,FALSE)
これで、同じプルダウンから複数の情報を引き出せます。
実務での運用ポイント
ここで大事なのは「マスタの列順」です。
途中で列を追加すると、列番号がズレて誤った値が出ることがあります。
そのため、
- 列番号を固定する
- もしくは別関数(INDEXなど)を使う
という判断が必要になります。
VLOOKUPが使えないときの代替手段(INDEX+MATCH)

実務で長く使っていると、VLOOKUPの限界にぶつかります。
VLOOKUPがうまく動かない原因
例えば、
- 左側の値を参照できない
- 列番号の変更で崩れる
- データ量が増えると重くなる
こういう場面です。
INDEX+MATCHの具体的な使い方
次のように書きます。
=INDEX(B:B,MATCH(A2,A:A,0))
意味はこうです。
- A列から一致する行を探す
- その行のB列の値を返す
VLOOKUPと違い、列の位置に依存しません。
実務でのメリット
INDEX+MATCHは最初は少し難しく感じますが、慣れるとこちらのほうが安定します。
特に、列が増減するマスタを扱う場合は、こちらを使ったほうが安全です。
プルダウン連動を実務で使うときの設計ポイント

ここまでできれば、機能としては完成です。ただし実務では「設計」が重要になります。
よくある失敗パターン
月末の締め作業で、担当者がそれぞれ別ファイルで管理していて、マスタがバラバラになっているケースがあります。
実務で安定させるための設計
ポイントは次の通りです。
- マスタは1つに統一する
- シートは分けるが参照元は固定する
- 編集権限を制限する
これを守るだけで、入力ミスと確認工数が一気に減ります。
実際にやるべき行動
まずは「マスタシート」を1つ作るところから始めてください。
そこに商品名・価格・在庫などをすべてまとめます。
次に、入力用シートからは必ずそのマスタを参照するように設定します。
これだけで、プルダウン連動は「ただの便利機能」から「業務効率化ツール」に変わります。
まとめ
プルダウンと関数を組み合わせると、Excelの入力作業は一気に自動化できます。
特に重要なのは次の3点です。
- VLOOKUPで基本の連動を作る
- IF関数で条件分岐に対応する
- IFERRORで見た目と運用を整える
ここに加えて、INDEX+MATCHまで使えるようになると、どんなデータでも柔軟に対応できるようになります。
そして最も重要なのは「マスタ設計」です。ここを適当にすると、どれだけ関数を組んでも崩れます。














