【EXCEL関数】LOOKUP関数 ~特定の範囲から近似値を探し出す~

windows
windows
スポンサーリンク

EXCEL関数の中で、ある特定の条件から検索をするときによく使われるのがLOOKUP関数です。LOOKUP関数と同様の使い方ができるものでVLOOKUP関数とHLOOKUP関数があります。
今回、この記事ではLOOKUP関数とVLOOKUP関数・HLOOKUP関数の違いも併せて解説していきます。

EXCELで表を作成して、そこから条件に当てはまる数値や値を出力したいと思われたことは多いと覆います。例えば、エクセルで名簿を作り名簿番号を割り振りした一覧表で、セルの1つに名簿番号を入力するだけで名簿が表示されるというようなものです。

では、さっそくLOOKUP関数から使い方を見ていきましょう。

LOOKUP関数

LOOKUP関数は条件に合う値を探し出力する関数です。
上の例では、LOOKUP関数を使い、G3セルの条件値(数値の3)とB3:B7にある検査範囲から一致するものまたは近似値を値を探し、C3:C7の適応範囲からその値を返します。
上の例では、G3の数値3に一致し適応範囲のあたいである”田代”を出力します。

このように表の中から検索範囲と条件値の一致または近似値を探し、その適応範囲から値を出力する関数が、LOOKUP関数です。

では、詳しい使い方を見ていきましょう。

LOOKUP関数の使い方

LOOKUP関数の基本の形である、関数式は次の様に記載します。

LOOKUP(検査値,検査範囲,[適応範囲]) または、LOOKUP(検査値,配列)

このようになります。なぜ2つもあるのか?それぞれ見ていきたいと思います。

LOOKUP(検査値,検査範囲,[適応範囲])

これは先ほど例でみたと思いますが、注意点があります。

①検索範囲を指定する場合は、その順番は必ず昇順になっている必要があります。
番号である場合は順番に並べる必要があります。番号出ない場合はEXCELの昇順で入れ替えるで並び替える必要がありますので注意してください。

②検査範囲と適応範囲は同じ大きさの選択範囲である必要があります。
これは検査範囲で検査値と一致または近似値を探し出力する範囲を合わせないと出力値が特定できないためです。セルを結合などでずれてエラーになることがまれにありますので注意が必要です。

検索値をわかりやすくするために数値にしておりますが、文字列でも対応することができます。

文字列で対応した表です。ここでは田中と一致して適応範囲である雄一を出力します。

注意)文字列の検査範囲の名簿の順番が変わっております。これはEXCELでは文字列の昇順でやり直したためです。人間の文字列の昇順とEXCELの文字列の昇順には差異がありますので、LOOKUP関数に限らず条件から検索する関数は文字列ではなく数値で紐づけるほうが管理がしやすいと思います。

LOOKUP(検査値,配列)

これは、簡易的に設定する方法です。ただ注意点が同様にあります。

①配列の形によって検査範囲がかわります。また、値は昇順である必要があります。
配列が縦長の2列である場合は1列目を検査範囲として2列目を適応範囲とします。横長の2行である場合は1行目が検索範囲として2行目を適応範囲ということになります。これが複数列/行の場合は、先頭の列/行が検査範囲で、最後の列/行が適応範囲になります。また検査範囲は昇順であるひつようがありますので昇順に並び替える必要があります。

検査値としてG3セルを指定して、配列としてB3:E7を指定しています。縦長の配列になりますのでB列が検査範囲になり、適応範囲はE列になります。ですので出力は性別の”女”になります。

いかがでしたでしょうか?ここまでLOOKUP関数を見てきました。
次はLOOKUP関数の派生であるVLOOKUP関数とHLOOKUP関数を見ていきましょう。

VLOOKUP関数とHLOOKUP関数

VLOOKUP関数とHLOOKUP関数の違いは、列(縦)か行(横)の違いです。LOOKUP関数で配列で指定した場合、配列が縦長か横長かで検査範囲がかわりましたが、これをVLOOKUP関数とHLOOKUP関数は関数の段階で指定します。そして適応範囲がLOOKUPの場合は最終の列/行になりましたがこれも何列/行目かを指定します。さらに、検査範囲も近似値でいいのか完全一致じゃないとだめなのかも指定できます。LOOKUP関数からより詳細に指定できるのがVLOOKUP関数及びHLOOKUP関数です。

この例では、VLOOKUP関数(縦用)をつかい、B3:E7の配列の先頭列B列を検査範囲として、3列目の名を出力します。また、最後の0により完全一致するものがない場合はエラーを返すようにします。この結果は”雄一”となります。

VLOOKUP関数のVは「Vertical(垂直)」、HLOOKUP関数のHは「Horizontal(水平)」という意味ですので合わせて覚えましょう。

では使い方を見ていきましょう。

VLOOKUP関数とHLOOKUP関数の使い方

VLOOKUP関数・HLOOKUP関数の基本の形である、関数式は次の様に記載します。

VLOOKUP(検索値,範囲,列番号,[検索方法])
HLOOKUP(検索値,範囲,行番号,[検索方法])

このようになります。

検索値には検索の値を、範囲は配列のように縦長や横長の区別はありませんので先頭の列/行を意識して出力する範囲をまとめて選択しましょう。行番号や列番号は出力する値の列や行を先頭の列/行を含めた列や行を指定します。検索方法は完全一致であれば”0″を、近似値であれば”1″を入力します。

まとめ

いかがでしたでしょうか?
LOOKUP関数とその亜種になります。検索などはEXCELに限らずコンピュータが一番得意とする項目です。データー量が膨大になればなるほど検索は重要性を増します。ぜひとも覚えたい関数の1つでありますのでマスターするようにしましょう。

また応用として、事前に作成した住所録から封筒などの郵便印刷のフォーマットを作成するだけで自動的に印刷するような活用もできます。

この記事が皆様のExcel関連の悩みを解消できたのであれば幸いです。

スポンサーリンク