VLOOKUP関数を利用したデータの検索・抽出

■データベースから必要なデータを検索し、抽出する

例えば、データベースの情報を元に、都道府県名を入力すると、その都道府県の人口が表示されるようにしたいとします。

f:id:espelican:20210605230904p:plain

 

■VLOOKUP関数を使用する方法

最も一般的な方法は、VLOOKUP関数を使用するものです。

 

----------------------------------------------------------------------------------------

=VLOOKUP(検索値, 範囲, 列番号, [検索の型])

----------------------------------------------------------------------------------------

 

今回の場合、

検索値: 都道府県名を入力するH2セル

範囲:  表の範囲B2:E8

列番号: 3(抽出する人口が表の中の何列目にあるか)

検索の型:0(完全一致のみ検索)

となります。

「検索の型」は、検索値が表の中に見つからなかった場合の対応を指定する引数で、省略可能ですが、意図しないデータを抽出しないためにも、深く考えずに0としておくことをおすすめします。

f:id:espelican:20210605232610p:plain

 

■VLOOKUP関数のデメリット

さて、このVLOOKUP関数は、検索・抽出の手法として、広く用いられているようですが、以下のようなデメリットがあります。

 

(1)検索したいデータがある列は、表の一番左になくてはならない

上の例では、「都道府県名」→「県庁所在地」の検索は可能ですが、「県庁所在地」→「都道府県名」の検索はできません。

 

(2)抽出したいデータがある列が表の何列目かを数えなくてはならない

上の例では、表が4列しかないのですぐ数えられますが、画面を右にスクロールしなければならないほどたくさんの列がある表だとすると、数えるのは相当な手間です。

 

(3)抽出したいデータがある列を列番号で指定するため、表の列を追加・削除すると、適切なデータを抽出できなくなる

例えば、県庁所在地のデータが不要になってC列を削除してしまうと、面積の列が3列目となるため、面積のデータが抽出されてしまいます。

 

こうした制約がない検索・抽出の方法として、INDEX関数、MATCH関数を利用した方法を次回紹介します。