VLOOKUPとHLOOKUPの違いと使い分け|縦はV・横はH【XLOOKUPなら両対応】

結論(先に答え)

VLOOKUPはVertical(縦方向)、HLOOKUPはHorizontal(横方向)の検索です。データが縦に並ぶ表(1行=1件)なら =VLOOKUP(検索値, 範囲, 列番号, FALSE)、見出しが横に並ぶ表なら =HLOOKUP(検索値, 範囲, 行番号, FALSE)。Microsoft 365なら XLOOKUP が縦横どちらにも対応できます。

「VLOOKUPとHLOOKUPは何が違うの?」「どっちを使えばいい?」——名前がよく似たこの2つの関数は、検索する方向が違うだけで、考え方はまったく同じです。この記事では、同じデータを縦・横2種類の表にして、2つの関数の違いを比較しながら解説します。

VLOOKUPとHLOOKUPの違い:縦の表はVLOOKUP、横の表はHLOOKUPで検索する図解
目次

違いは「表の向き」だけ

VLOOKUPHLOOKUP
検索方向縦(Vertical)横(Horizontal)
検索値を探す場所範囲の左端の列範囲の上端の行
取り出す位置の指定左から数えた列番号上から数えた行番号
向いている表1行=1件の縦持ちの表(名簿・台帳)見出しが横に並ぶ表(月別集計など)

つまり、「検索値がどの方向に並んでいるか」で使う関数が決まります。実務のデータは縦持ちが圧倒的に多いため、VLOOKUPの出番が多くなります。

サンプルデータで比較する

以下のサンプルデータをExcelシートにコピーして、実際に数式を試してみてください。

練習用のExcelファイルはこちらからダウンロードできます:
Excel-vlookup-hlookup-difference-1.xlsx(ダウンロード)

縦の表 → VLOOKUP

ABC
1商品コード商品名価格
2A001りんご120
3A002みかん80
4A003バナナ150

商品コード「A002」の価格を取り出すには、次のように入力します。

=VLOOKUP("A002", A2:C4, 3, FALSE) → 結果: 80

範囲 A2:C4 の左端の列(A列)から A002 を探し、左から3列目(価格)を返します。

横の表 → HLOOKUP

ABCD
14月5月6月
2売上12095140
3利益302241

「5月」の利益を取り出すには、次のように入力します。

=HLOOKUP("5月", B1:D3, 3, FALSE) → 結果: 22

範囲 B1:D3 の上端の行(1行目)から 5月 を探し、上から3行目(利益)を返します。列番号が行番号に変わっただけで、引数の考え方はVLOOKUPと同じです。

XLOOKUPなら縦も横も同じ書き方

Microsoft 365・Excel 2021以降で使えるXLOOKUP関数は、「検索する範囲」と「返す範囲」を別々に指定するため、縦横を意識せず同じ書き方ができます。

縦の表: =XLOOKUP("A002", A2:A4, C2:C4) → 80
横の表: =XLOOKUP("5月", B1:D1, B3:D3) → 22

範囲指定を「検索する列(行)」と「返す列(行)」に分けるだけで、列番号・行番号を数える必要もありません。新しいExcelを使っているなら、VLOOKUP・HLOOKUPの代わりにXLOOKUPを使うのがおすすめです。

まとめ

VLOOKUPとHLOOKUPの違いは「検索の方向」だけです。縦持ちの表ならVLOOKUP、横持ちの表ならHLOOKUP、そしてMicrosoft 365ならどちらもXLOOKUPで置き換えられます。まずは手元の表の向きを確認して、使う関数を選んでください。

こんな場合はこちら:VLOOKUP関数の使い方まとめ(基本から応用まで)XLOOKUP関数の複数条件検索

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次