Office
 Computer >> コンピューター >  >> ソフトウェア >> Office

ExcelのVLOOKUP関数の使い方を徹底解説!基本から応用まで

大量のデータが入ったExcelスプレッドシートから、特定の情報だけを簡単に抽出したいと思ったことはありませんか?ExcelでVLOOKUPを使いこなせるようになれば、たった一つの強力な関数だけで、こうした検索・抽出作業を実現できます。

VLOOKUP関数は、引数が多く、使い方も複数あるため、多くの人にとってとっつきにくい存在です。この記事では、ExcelにおけるVLOOKUPのあらゆる使い方と、この関数がなぜそれほど強力なのかを、具体例を交えながら詳しく解説します。

ExcelのVLOOKUP関数の引数

Excelの任意のセルに=VLOOKUP(と入力すると、利用可能な引数の一覧がポップアップ表示されます。

それぞれの引数の意味を見ていきましょう。

  • lookup_value:スプレッドシート内で探したい値
  • table_array:検索対象となるセル範囲
  • col_index_num:結果を取り出したい列の番号
  • [range_lookup]:照合モード(TRUE=近似一致、FALSE=完全一致)

これら4つの引数を組み合わせることで、大規模なデータセットの中から、さまざまな有用なデータ検索が可能になります。

シンプルなVLOOKUPの使用例

VLOOKUPは初心者が最初に覚える基本的なExcel関数ではないため、まずは簡単な例から始めてみましょう。

ここでは、アメリカの学校のSATスコアがまとめられた大きなスプレッドシートを使用します。このシートには450校以上の学校のデータと、リーディング、数学、ライティングの各SATスコアが含まれています。

こんなに大きなデータセットから目的の学校を手動で探すのは、非常に時間のかかる作業です。

そこで、表の横にある空白セルに簡易的な検索フォームを作成しましょう。「学校名」フィールドを1つと、「リーディング」「数学」「ライティング」のスコア表示用フィールドを3つ作ります。

次に、これら3つのフィールドを機能させるために、VLOOKUP関数を使います。リーディング欄には、次のようにVLOOKUP関数を作成します。

  1. =VLOOKUP( と入力します。
  2. 学校名フィールド(この例では I2)を選択し、カンマを入力します。
  3. 検索対象データを含むセル範囲全体を選択し、カンマを入力します。
  4. リーディングスコアを取得するには、選択範囲の左端から3列目を指定します。したがって 3 を入力し、さらにカンマを入力します。
  5. 最後に、完全一致を指定する FALSE を入力し、) で関数を閉じます。

範囲を選択する際は、検索に使う列(この場合は学校名列)から開始し、データを含む他のすべての列と行を選択してください。

注意: ExcelのVLOOKUP関数は、検索列より右側のセルしか検索できません。この例では、学校名列は検索対象データよりも左に配置されている必要があります。

完成したVLOOKUP関数は次のようになります。

=VLOOKUP(I2,B2:G461,3,FALSE)

Enterキーを押して関数を確定すると、リーディング欄には #N/A が表示されます。これは、学校名フィールドが空欄のため、VLOOKUP関数が検索するものがないからです。しかし、任意の高校名を入力すれば、その行のリーディングスコアが正しく表示されるようになります。

VLOOKUPの大文字・小文字問題への対処法

学校名をデータセット内の表記と同じ大文字・小文字で入力しないと、結果が表示されないことに気づくかもしれません。

これは、VLOOKUP関数が大文字と小文字を区別するためです。特に大規模なデータセットで、検索対象列の大文字表記が不統一な場合には、これが厄介な問題になります。

この問題を回避するには、検索前に検索値を小文字に変換してしまう方法があります。検索対象の列の隣に新しい列を作成し、次の関数を入力します。

=TRIM(LOWER(B2))

これにより、学校名が小文字に変換され、名前の前後にある余分なスペースなどの不要な文字も取り除かれます。

Shiftキーを押しながら、先頭セルの右下隅にマウスカーソルを合わせると、カーソルが二重線に変わります。そこでダブルクリックすると、列全体にオートフィルできます。

最後に、VLOOKUPがこれらのセルのテキストではなく数式を参照してしまうのを防ぐため、すべて値のみに変換する必要があります。列全体をコピーし、先頭セルで右クリックして「値のみ貼り付け」を行いましょう。

新しい列のデータが整理できたら、検索範囲の開始位置をB2ではなくC2に変更して、VLOOKUP関数を修正します。

=VLOOKUP(I2,C2:G461,3,FALSE)

これで、検索語を常に小文字で入力すれば、常に正しい検索結果が得られるようになります。これは、VLOOKUPが大文字・小文字を区別するという仕様を克服するための、覚えておくと便利なExcelテクニックです。

VLOOKUPの近似一致

これまで説明してきた完全一致による検索は比較的シンプルですが、近似一致はもう少し複雑です。

近似一致は、数値範囲を検索する場合に最適です。正しく使うには、検索範囲が適切に並べ替えられている必要があります。わかりやすい例としては、点数に対応する評定(成績ランク)を検索するVLOOKUP関数が挙げられます。

たとえば教師が、1年間の生徒の課題成績の長いリストと、最終的な平均点の列を持っているとします。このとき、平均点に対応する評定が自動的に表示されるようにできれば非常に便利です。

これはVLOOKUP関数で実現できます。必要なのは、各数値範囲に対応する評定を記載した参照テーブルを右側に用意することだけです。

あとは、VLOOKUP関数と近似一致を使えば、正しい数値範囲に対応する適切な評定を求められます。

このVLOOKUP関数の構成要素は以下の通りです。

  • lookup_value:F2(最終平均点)
  • table_array:I2:J8(評定の参照範囲)
  • col_index_num:2(参照テーブルの2列目)
  • [range_lookup]:TRUE(近似一致)

G2にVLOOKUP関数を入力してEnterキーを押したら、前述のオートフィルの方法で残りのセルにも同じ関数をコピーします。すると、すべての評定が正しく表示されるはずです。

ExcelのVLOOKUP関数は、評定範囲の下端から次の評定範囲の上端にかけて検索することに注意してください。

つまり、「C」は下限値(75)に割り当てられ、「B」はその範囲の下限(最小値)に割り当てられます。VLOOKUPは、60〜75の間のどの数値に対しても、60(D)を最も近い近似値として「見つけ出す」というわけです。

ExcelのVLOOKUPは長年にわたって利用されてきた非常に強力な関数であり、ワークブック内のどこにある一致する値を見つけるのにも役立ちます。

ただし留意すべき点として、月額版のOffice 365サブスクリプションを利用しているMicrosoftユーザーは、より新しいXLOOKUP関数を利用できるようになっています。XLOOKUPは引数が多く、柔軟性もさらに高い関数です。半年ごとの更新サイクルを利用しているユーザーは、更新が展開されるまで待つ必要がありました。

  1. ExcelのVLOOKUP関数の書き方・作り方・使い方を徹底解説

    Microsoft ExcelのVLOOKUP関数は、直訳すると「垂直検索(Vertical Lookup)」を意味します。表の縦方向(列)からデータを検索し、目的の値を取り出すための検索関数で、左端の列のデータを基準に対応する値を探し出します。列や行が大量にある大きな表を扱う場合、数百ものセルを目で追いかけて確認するのは非常に非効率です。そんなときに役立つのがVLOOKUP関数です。上から下へ値を照らし合わせて検索するため、必要なデータを素早く見つけられます。ExcelのVLOOKUP関数の作り方と使い方ここでは、7名の従業員の給与情報を検索するVLOOKUP関数を例に解説します。以下の2つ

  2. ExcelのVLOOKUP関数の使い方を徹底解説!初心者でもわかる検索・参照テクニック

    Microsoft Excelには数多くの便利な関数が用意されていますが、今回はその中でも特に重要なVLOOKUP関数について詳しく解説します。VLOOKUPは「Vertical Lookup(垂直検索)」の略で、表の中を縦方向に値を検索し、対応する結果を返すための関数です。Excelに搭載されている検索/行列関数の一つであり、実務でも頻繁に活用される必須スキルと言えます。VLOOKUP関数とは?VLOOKUPを使うと、スプレッドシート内の情報を縦方向に検索し、それに対応する別の値を取り出すことができます。例えば、大量の商品リストが載った表から「特定の商品の価格」だけを抜き出したい場合、この関