Excelの魅力をお伝えする「パソコン教室ISA」ライターチームです。
エクセルにおけるLOOKUP関数とは、複数のセルから目的の値を探し出すことのできる関数です。他の行もしくは列の同じ場所にある値を検索する際に便利な関数となります。エクセルスキルとしては基本的なスキルのため、覚えておくとよいでしょう。
本記事では、エクセルにおけるLOOKUP関数について詳しく解説します。ぜひ、参考にしてください。
エクセルのLOOKUP関数とは
エクセルのLOOKUP関数とは、複数のセルから目的のセルを見つけられる関数です。他の行もしくは列の同じ場所に存在する値を簡単に検索できるようになるため、作業の効率化につながります。たとえば、部品番号はわかるが価格が分からないという場合、部品番号を入力すると対応する価格を検索できるという仕組みです。
検査範囲に検査値が見つからない場合には、検査範囲に含まれている検査値以下の最大値で検索されます。
VLOOKUP関数・HLOOKUP関数との違い
LOOKUP関数と似た関数として、VLOOKUP関数とHLOOKUP関数があります。VLOOKUP関数とは、検索値が縦に並んでいる場合に使用する関数です。一方、HLOOKUP関数は検索値が横に並んでいる場合に使用します。LOOKUP関数、VLOOKUP関数、HLOOKUP関数、それぞれ検索値やそれに近い値を検索するという用途は同じです。
参照するデータが縦方向に並んでいる場合にはVLOOKUP関数を使用し、横方向に並んでいる場合にはHLOOKUP関数を使用するというように、参照範囲の向きに合わせて使い分けましょう。
パソコンスクールISA
Office・IT・プログラミング等の
パソコンスキルアップを徹底サポート!
東京、横浜、埼玉、千葉の
最寄駅5分以内!オンライン授業も
LOOKUP関数の書式・構文
LOOKUP関数には「ベクトル形式」と「配列形式」という2つの書式があります。ベクトル形式と配列形式にはどのような違いがあるのでしょうか。ここでは、ベクトル形式・配列形式について詳しく解説します。
1.ベクトル形式
ベクトル形式は、一般的なLOOKUP関数です。1つの行、もしくは1つの列で値を検索します。たとえば、A列の5行目までを範囲として値を検索する場合などに使われます。
ベクトル形式では、1行もしくは1列という範囲で値を検索するという仕組みです。値を探し出すと、範囲の次の行、もしくは列の同じ位置にある値を返します。検査する範囲に入力されている値が昇順になっていないと、正しい結果が表示されないため注意しましょう。
ベクトル形式のLOOKUP構文
ベクトル形式のLOOKUP構文は以下の通りです。
=LOOKUP(検査値,検査範囲,[対応範囲])
- 検索値:検索したい値や文字列。検索値が入力されたセルを指定する、もしくは関数内に直接入力する
- 検査範囲:検索値を探す範囲。値が入力された列・行の範囲から検索値、もしくは検索値に最も近い値を探す
- 対応範囲:検索範囲に対応する値が入力されている範囲
LOOKUP関数のベクトル形式では、検索値と検査範囲の引数を必ず指定します。検索値には数値や文字列、論理値、セル参照などを指定し、検査範囲には1行もしくは1列といった範囲を指定しましょう。
2.配列形式
配列形式のLOOKUP関数とは、配列の最初の行もしくは列で指定された値を検索するという方法です。値を見つけ出した後は、配列の最後の行もしくは列の同じ位置にある値を返します。
配列を指定する際に使われる形式で、たとえばA列~C列の5行目までを範囲として検索する場合などに使われます。また、配列形式を使用する場合には、ベクトル形式と同様に入力されている値を昇順に並び替える必要があるため注意しましょう。
配列形式のLOOKUP構文
配列形式のLOOKUP構文は以下の通りです。
=LOOKUP(検査値,配列)
検索値の詳細は、ベクトル形式と同様です。配列とは、検査範囲と対応範囲を合わせたものです。範囲の初めの行もしくは列が検査範囲となり、最後の行もしくは列が対応範囲となります。
LOOKUP関数の配列形式は、配列内で検索値を検索して、初めの行もしくは列で一致した値を見つけると、その一の最後の行もしくは列の値を返します。
HLOOKUPやVLOOKUPと似た仕組みですが、LOOKUPは横長の配列では先頭行、縦長または正方形の配列では先頭列で検索し、最終行また最後列の値を自動的に選択することが可能です。
パソコン教室ISAの体験授業で自分にあったレベルを相談してみる
\ Excel講座の詳しい情報を受け取る /
LOOKUP関数が使える具体的なシーン
LOOKUP関数は実際にどのような使い方ができるのでしょうか。ここでは、LOOKUP関数を使用する際の具体例を3つ紹介します。LOOKUP関数の詳しい使い方や使えるシーンを知りたいという場合はぜひ参考にしてください。
正解数などに応じたランク付け
LOOKUP関数を使うことで、点数などに応じたランク付けが手軽に行えるようになります。
たとえば、100点満点のテストを5名の生徒に受けさせたとしましょう。各生徒が取った点数に応じて、「大変よくできました」「よくできました」「もう少しがんばりましょう」といったランク付けをしたいという場合にLOOKUP関数を使います。LOOKUP関数なら、点数に対応したランクが表示されるようになるため、手動でランク付けする必要がありません。
社員番号から社員名を表示させる
社員番号を入力するだけで社員名を表示させることも、LOOKUP関数を使えば簡単に行えます。ただし、社員番号などのデータはあらかじめ昇順に並べ替えておかないと正確な結果が表示されないため注意しましょう。
また、社員番号から社員名を表示させるだけでなく、さまざまなパターンに応用可能です。たとえば、商品番号から商品名や価格を表示させる、所属Noから所属名を表示させるといった使い方ができるため、効率的に作業できます。
コードNOから受講料やテキスト代を表示させる
講座Noから、講座名や受講場所などを自動で表示させることも可能です。たとえば、講座Noを入力するだけで、自動で講座名や受講場所を表示されるようにしたいといった場合によいでしょう。講座やセミナーなどの申し込み確認書を作成する際の手間を省けます。
また、受講料やテキスト代だけではなく、商品コードや数量を入力すると単価や金額などを表示するといったこともできるため、見積書や請求書の作成時にも便利です。
\ Excel講座の詳しい情報を受け取る /
エクセルのLOOKUP関数で「#N/Aエラー」になった際の対処法
エクセルのLOOKUP関数を使ったときに、「#N/Aエラー」が表示されるケースもあります。ここでは、エラーになった場合の対処法を解説します。
セルの表示形式が異なるためにエラー
見た目は全く同じでも、「表示形式」の違いで、値が異なると認識される場合があります。このような場合にエラーになります。
A列の社員番号の表示形式は「標準」という書式になっているため、数値を入力することで自動的に「数値」として認識されています。値が右揃えになっていると数値として認識されています。一方G2の表示形式は「文字列」です。文字列の場合、左揃えになります。
2つの値は見た目が全く同じでも実際は違うので、この2つの値を全く同じにしないとLOOKUP関数でエラーがでてしまいます。
セルの書式が「数値」か「文字列」かを単純に見分ける方法には、セルの表示形式を標準にした後に、セルの文字の配置が右寄りか、左寄りになっているかでもわかります。右寄りは「数値」、左寄りは「文字列」です。
エラーチェックオプションから「数値に変換する」をクリックしてして、数値に合わせることでエラーを回避できます。
パソコンスクールISA
Office・IT・プログラミング等の
パソコンスキルアップを徹底サポート!
東京、横浜、埼玉、千葉の
最寄駅5分以内!オンライン授業も
検索範囲の最小値を確認する
エラーの原因の1つに、検索値が検索範囲の最小値よりも小さいことが考えられますLOOKUP関数の場合、検索する範囲に検索値が見つからないときには検索値以下の最大値が検索されます。この際、検索値が検索範囲の最小値よりも小さい場合は、値が見つからない場合にエラーとなってしまいます。そのため、検索範囲の最小値を確認しましょう。
数式にIFERRORなどを使用する
「#N/Aエラー」が表示された場合には、IFERROR関数を使用してみましょう。IFERROR関数では、数式がエラーだと評価された場合に、エラーの代わりに別の文字や数値を表示することが可能です。
=IFERROR(LOOKUP(G7,$A$2:$A$7,$B$2:$B$7),”該当者なし”)
上記のようにすることで、LOOKUP関数の結果がエラーの場合は、「該当者なし」と表示されます。
エクセルにはLOOKUP関数という関数があり、複数のセルから目的の値を探して、他の行もしくは列の同じ場所にある値を検索する際に使えます。たとえば、商品コードから商品名や価格を表示させる、社員番号から社員名を表示させることなどができるため、作業の効率化につながります。
ISAパソコン教室は、40年近く教室を営んでおり実績が豊富です。教室にいる講師はすべて社員のため、講師の質の高さも魅力です。また、ここ10年でMicrosoftジャパンが1年に1社選ぶLearning Awardを3度受賞と信頼性も高くなっています。エクセルを始めとしたさまざまな講座を展開しているため、スキルアップをお考えの人は受講をご検討ください。