- 公開日:
- 更新日:
エクセルのIF関数を使ってプルダウンを連動させる方法
この記事では、エクセルのIF関数を使ってプルダウンを連動させる方法をご紹介します。
IF関数とVLOOKUP関数を使うことでプルダウンで選択した商品名に対応する価格を隣のセルに自動的に表示するという設定ができます。
関数の詳細な説明も行っていますので、数式をアレンジして使いたい場合にご確認ください。
エクセルのIF関数を使ってプルダウンを連動させる方法
IF関数とVLOOKUP関数を組み合わせて、プルダウンの選択肢に対応する項目を別のリストから抽出できるように設定する方法をご紹介します。今回は商品名のプルダウンに連動して隣のセルに価格が自動的に表示されるように設定を行います。
まずはプルダウンと連動するための選択肢のリストを別シート(例:商品リスト)に作成します。今回は上の画像のようにA列に商品名、B列に価格を入力しました。プルダウンシートのプルダウンでA列のいずれかの商品名を選択したら、単価が自動的に表示されるように設定します。
プルダウンを作成します。まずは商品名の選択を行うプルダウンを設定します。任意のセル(例:F3セルからF8セル)、データタブ、「データの入力規則」の順に選択します。
「データの入力規則」ダイアログボックスが表示されます。「入力値の種類」でリストを選択し、「元の値」の↑ボタンを押します。
選択肢をセル範囲で設定できるダイアログボックスが表示されます。商品リストのシートに移動して、先ほど作成した選択肢のリストの商品名(例:A2セルからA4セル)を選択し、Enterを押します。
「データの入力規則」ダイアログボックスに戻ります。OKボタンを押します。
これで商品名のプルダウンを設定することができました。次の連動させる設定を分かりやすくするために、セルの右側にある三角ボタンを押して任意の選択肢(例:ノートパソコン)を選んでおきましょう。
次に、F列の商品名に対応する単価を商品リストから抽出するための数式を入力します。単価を表示したいセル(例:G3セル)を選択し、=IF(F3=",",VLOOKUP(F3,商品リスト!$A$2:$B$4,2,0))と入力します。Enterを押します。
すると、F列の商品名に対応した単価が抽出されるように設定できました。数式を他のセルにもコピーします。数式を入力したセル(例:G3セル)の右下にあるフィルハンドルをコピーしたい方向に向かってドラッグします。
他のセルにもコピーしたら、別の選択肢を選んで正しく単価が抽出されるか確認しましょう。商品名のプルダウンの三角ボタンを押して別の選択肢(例:デスクトップパソコン)を選択します。
選択した商品名に対応する単価が表示されれば問題なく設定ができています。これでIF関数とVLOOKUP関数を使ってプルダウンと連動する設定をすることが出来ました。
IF関数とVLOOKUP関数について
上記「エクセルのIF関数を使ってプルダウンを連動させる方法」でご紹介している方法ではIF関数とVLOOKUP関数を組み合わせた数式を使用します。
数式を以下に記載しますのでコピーアンドペーストしてお使いください。
=IF(F3=",",VLOOKUP(F3,商品リスト!$A$2:$B$4,2,0))
数式の解説は以下のとおりです。数式をアレンジする際の参考にしてください。
上記はG3セルに入力する数式です。
IF関数の書式は、「=IF(論理式,[値が真の場合],[値が偽の場合]」です。
上の画像の①が論理式の引数になっていて、「F3が空欄のときはG3セルを空欄のままにして、何か商品名が入っている時はVLOOKUP関数で商品リストから価格を検索して抽出する」という数式になっています。
①の「F3="」は「F3セルが空欄の場合は」という意味なので、ここに基準にしたいプルダウンのセルを設定します。次の「"」は「空欄にする」という意味です。
次のVLOOKUP関数は、書式が「=VLOOKUP(検索値,範囲,列番号,[検索方法])」です。
VLOOKUP関数の検索値の引数に①を設定することで、商品名を②の商品リストから探します。
価格は商品リストの左から2列目にあるので③で「2」を指定し、商品名に完全に一致するものを商品リストから探したいので検索方法の引数は完全一致を意味する「0」を入力します。