Excelで作成した表の1つの行または列の値を検索して、対応する値を返してくれるのがLOOKUP(ルックアップ)関数です。Excel関数でよく使われるVLOOKUP関数やHLOOKUP関数に比べ、できることは限られますが、縦方向(行)と横方向(列)の両方に対応するなどメリットもあります。
本連載では、「よく使うけど忘れやすいMicrosoft Officeの操作」をキーワードに、Officeアプリケーションの使い方を解説していきます。記事の制作には、執筆時点で最新の状態にアップデートしたMicrosoft Office 2016を使用しています
LOOKUP関数とVLOOKUP関数、HLOOKUP関数の違い
LOOKUP関数は、Excelに搭載されている検索/行列関数。1つの行または1つの列から値を検索するベクトル形式と、VLOOKUP関数やHLOOKUP関数と同じ配列形式が使えますが、配列形式を使う場合はVLOOKUP、HLOOKUPを使ったほうが効果的です。
また、LOOKUP関数は、VLOOKUP関数やHLOOKUP関数とは異なり完全一致の検索が行えません。たとえば「2」という検査値で、「1、3、5」という値がある行(列)を検査範囲にした場合、検査値以下の値でもっとも近い「1」の値が検索され、対応範囲から値が返されます。このため、検査範囲の行または列の値は、小さい順(昇順)に並んでいる必要があります。
1つの行/列から値を検索するならLOOKUP関数
基本の数式は「=LOOKUP(検査値,検査範囲,対応範囲)」
そこで今回は、ベクトル形式の「=LOOKUP(検査値,検査範囲,対応範囲)」という数式を使って、1つの行または列からデータを検索し、対応する値を返す方法を紹介します。具体例として、10点満点のクイズの結果を記入した表で、得点(正解数)に合わせたランクのコメントを表示させる手順からLOOKUP関数の使い方を見ていきましょう。
LOOKUP関数なら行/列、縦/横に両対応
今回紹介したLOOKUP関数の使い方は、VLOOKUP関数やHLOOKUP関数でも行えますが、LOOKUP関数のほうが数式がシンプルで使いやすいのがメリットです。さらに、VLOOKUPは垂直(縦)方向の検索、HLOOKUPは水平(横)方向の検索に対応していますが、LOOKUPは縦/横どちらの検索にも対応します。ここでは横方向(つまりは1つの行)で検査範囲と対応範囲を指定した数式を作成してみましょう。