【エクセル・Excel】VLOOKUP関数の使い方
-
カテゴリ:
- パソコン
今回は個人的によく使う関数でNo1の「VLOOKUP関数」を紹介します。
仕事で普段からエクセルを使っている人は一度は使ったことがあるんじゃないでしょうか。
自分もSEの仕事をしていてプログラムのテストをする際、エビデンスを取る時に大活躍のしてくれるのがこの「VLOOKUP関数」です。
VLOOKUPとは
VLOOKUPは検索対象の表から検索したい値を列ごと検索し、ヒットした列の任意のセルのデータを取得することができます。
そのためVLOOKUPを使うためには、最低でも検索する対象の表データを事前に用意する必要があります。
言葉で書くと分かりづらいですね。使い方としてよく見かけるのが商品コードから商品情報を取得するケースです。
以下のサンプルを見て下さい。
図1
B2セルに商品コードを入力すると、それ対応する情報を商品表から検索して、ヒットして値をB3からB5に表示しています。
この例ではVLOOKUPはB3からB5のセルで使っており、商品コードから商品情報を取得しているのが分かるかと思います。
VLOOKUPの使い方
VOLOOKUPの使い方としては
VLOOKUP(検索値, 適応範囲, 列番号, 検索の型)
という形で使用します。
カッコの中には「検索値」、「適応範囲」、「列番号」、「検索の型」を指定する必要があります。
一つ一つ順を追って説明しきます。
まず「検索値」についてですが、これは表の中から検索する対象の値を指定します。
下図を見て下さい。
図2
この例では「検索値」としてB2セルを見るようにしています。つまり商品コードの「003」を対象として探しに行きます。
続いて「適応範囲」ですが、これはVLOOKUPを使う範囲を指定します。
VLOOKUPとは、表から対象の値を検索してヒットした行の値を取得するためのものと説明しましたが、「適応範囲」は検索する列と取得したい値が含まれる列の両方を含めた範囲を示します。
図2では「適応範囲」としてA9:D18の範囲を指定しています。これは商品表の見出し行を除いたものを対象にしています。
次に「列番号」です。図3をご覧ください。
図3
「列番号」とは、「適応範囲」のうち「検索値」にヒットした行の何列目のセルの値を取得するか指定します。
図3のとおり、商品名を取得したい場合は「2」を、値段を取得したい場合は「3」を、在庫を取得したい場合は「4」を指定すればいいわけです。
ここで注意点として、実際に検索しにいく列は「適用範囲」の内一番左の列が対象となります。
今までのおさらいも兼ねて図4を見て下さい。
図4
商品コード(B2)から商品名(B3)を取得するパターンを考えた場合、VLOOUPの関数式は「=VLOOKUP(B2, A9:D18, 2, FALSE)」となります。
「検索値」としてB2セルの003を使って、「適用範囲」の一番左の列はA列となり、つまり商品コードを対象に検索しにいきます。
商品表の内、11行目が検索にヒットし「列番号」が左から2番目の「マウス」が取得れる、という流れです。
最後に、まだ登場していなかった「検索の型」について説明します。
検索の型ではTRUEかFALSEのどちらかを指定することになりますが、TRUEの場合は近似値で検索し、FALSEの場合は完全一致で検索しにいく違いがあります。
例えばTRUEを指定した際、検索値が仮に範囲内に存在しなかった場合は、検索値を超えない最大の値を対象としてヒットします。FALSEでは検索値と完全に同じ値のみヒットします。基本はFALSEにして使っていれば問題ないかと思います。
参考として図5を見てください。
図5では商品コードが1と5と10の3品あり、それに対してLOOKUPの検索値を1から11まで設定しものと、最後に100で設定したもののサンプルです。
図5
結果として、検索値が1から4までは商品コードが1の「デスクトップPC1」がヒットし、検索値が5から9までは商品コードが5「デスクトップPC5」がヒットし、検索値が10以上の場合は商品コードが10の「デスクトップPC10」が表示されているかと思います。
試しに検索の型をTRUEからFALSEにしたサンプルが以下の図6となります。
FALSEにすると完全一致で商品コードを検索しに行くので、検索値が1,5,10以外は検索値が無かったことを意味する「#N/A」が表示されているかと思います。
図6
まとめ
今回は「VLOOKUP」の使い方を簡単に説明しました。
LOOKUPは表の中から対象の文字を検索するのにとても便利ですが、そのほかにも利用方法としていろいろなケースがあると思います。
記事の最初で、SEの仕事ではテストエビデンスを取るときに便利と言いましたが、今後余裕があればそれら含め利用ケースをまとめた記事も書きたいと思います。