工場を意味する規格番号から、工場リストを検索し工場名を自動で入力する方法を説明します。EXCELでは、検索値を特定の範囲の縦方向に検索し、範囲内の別の列の同じ行にある値を返す場合には「VLOOKUP関数」を使用します。VLOOKUP関数は、関数の分類[検索 / 行列関数]から使用します。

規格の横に工場を記載できるように列を挿入

VLOOKUP関数と似た関数に、HLOOKUP関数がありますが、範囲のリストが縦方向の場合にはVLOOKUP関数を、横方向の場合にはHLOOKUP関数を使用します。VLOOKUP関数の「V」は、縦方向(Vertical) を、HLOOKUP関数の「H」は、横方向(horizontal) を意味しています。

この関数を使用する際に、一番重要な事項は、範囲のリストの作成方法です。リストは、データを含むセル範囲となり、範囲の左端の列の値から、検索値が検索されるため、1列目は検索値となる値で作成。また、リスト作成後、検索値となる値で作成された左端の列を基準に昇順に並べ替えます。並べ替えを行っていない場合、VLOOKUP関数を使用しても、正しい値が返されない場合があります。

別シートに準備した工場リスト

関数の書式

=VLOOPUP(検索値,範囲,列番号,検索方法)

列番号:目的のデータが入力されている列の番号を[範囲]の左側から数えた数で指定
検索方法:検索方法をTRUE(1)、FALSE(0)で指定。FALSEの場合には完全に一致する値が表示。省略するとTRUE。

使用例1:規格番号から工場を表示する

=VLOOKUP(C2,工場リスト!$B$2:$C$28,2,0)

式をコピーして使用するため、範囲は「絶対指定」

規格から工場名が入力された

「工場リスト」はシート名です。工場リストのB2:C28に検索対象の範囲があります。検索範囲の前に「$」につけているのは、絶対アドレス指定にしたいからです。Excelは計算式をコピーすると、計算式の中のセル番号もそれに合わせて自動調整されます。これは、融通の利いた非常に便利な機能ですが、今回のように範囲を固定したい場合は、$をつけて自動調整されないようにします。

使用例2:検索値が入力されていない場合にもエラーを表示しない

=IF(C13="","",VLOOKUP(C14,工場リスト!$B$2:$C$28,2,0))

IF関数を組み合わせて、規格が入力されていない場合にもエラーを表示させない