らくらくIT活用術

PC活用講座 - Excel

「Excelの便利機能活用術」
欲しい情報が同じ表にない! 違う表からデータを抽出する方法とは

ITライター 立山秀利

VLOOKUP関数やHLOOKUP関数は同じ表の中でしか検索できないが、LOOKUP関数を使うと、異なる表からでも検索・抽出できるケースがある。今回は同関数の基本的な使い方を解説する。

1つの列や行だけならLOOKUP関数で検索

例えば図1のように、ノートパソコンのスペック表がA6~D11セルにあり、さらにモデルとおすすめの用途の対応表がF6~G9セルにあるとする。スペック表の型番ではB6セルの製品が上位モデル、C6セルが中位モデル、D6セルが下位モデルにあたるとする。

ここで、A4セルに入力した型番から、おすすめの用途をG7~G9セルから検索し、C4セルに抽出したいとする。VLOOKUP関数やHLOOKUP関数は同じの表の中からしか検索して抽出できないので使えない。

図

図1

そこで利用したのがLOOKUP関数だ。1つの行または列の範囲からデータを検索して抽出する。書式は次の通りだ。

---------------------------------------------
=LOOKUP(検索値, 検索範囲, 対応範囲)

検索値    :検索する値
検索範囲  :検索したいデータの範囲
対応範囲  :取り出したいデータの範囲
---------------------------------------------

引数「検索値」に指定した値を、引数「検索範囲」から検索し、その並び順に対応したデータを引数「対応範囲」の中から抽出する。

LOOKUP関数を使ってみよう

それでは、図1の表でLOOKUP関数を実際に使ってみよう。引数「検索値」には、調べたい型番が入力されるA4セルを指定する。引数「範囲」には、スペック表で型番が並んでいるセル範囲のB6~D6セルを指定する。引数「対応範囲」には、おすすめの用途が並んでいるセル範囲のG7~G9セルを指定する。以上を踏まえると、LOOKUP関数の数式は以下になる。

---------------------------------------------
=LOOKUP(A4, B6:D6,G7:G9)
       ---  ----- -----
   検索値 検索範囲 対応範囲
---------------------------------------------

上記をB4セルに入力すると、A4セルの型番がB6~D6セルから検索され、その並び順に対応したおすすめの用途がG7~G9セルから抽出される(図2)。

図

図2

このようにLOOKUP関数は1つの行または列の範囲なら、異なる表で、なおかつ、検索範囲と対応範囲でデータの並びの縦横が異なっていても検索・抽出できる。

ただし、検索・抽出できる条件がいくつかあるので注意が必要だ。

・検索範囲のデータは必ず昇順で並べておく
・検索範囲と対応範囲は1行または1列
・検索範囲と対応範囲のセル数は揃える

LOOKUP関数を使う際は、これらの条件を満たしているかを先にチェックしよう。

その他の【Excel】を見る

PC活用講座 一覧へ

立山秀利(たてやま・ひでとし)

カーナビのソフトウェア開発、Webプロデュース業務を経て、現在は、システムやネットワーク、Microsoft Officeを中心に執筆中。 主な著書に『Excel VBAのプログラミングのツボとコツがゼッタイにわかる本』などがある。

(監修:日経BPコンサルティング)