
Googleスプレッドシートで、表の横方向(水平方向)にデータを検索して目的の値を抽出する「HLOOKUP関数」の使い方をご紹介します。定番の「VLOOKUP関数」との違いや、上位互換の「XLOOKUP関数」についても解説しているので、ぜひ参考にしてみてください。
HLOOKUP関数の基本

HLOOKUP関数は、「検索範囲」の一行目を検索し、「検索値」と一致した列の指定した「行」にある値を返します。
例:=HLOOKUP(A2, $B$4:$D$5, 2, FALSE)
HLOOKUP関数の引数:(検索値, 検索範囲, 行番号, [並べ替え済み])
💡 4つの引数のポイント:
- 検索値:
- 検索したい文字(または数値など)が入ったセルを指定します。数式内に直接記述する場合は、ダブルクォーテーション(例:
"ばなな")で囲います。
- 検索したい文字(または数値など)が入ったセルを指定します。数式内に直接記述する場合は、ダブルクォーテーション(例:
- 検索範囲:
- 検索するデータと抽出したい値が含まれる表全体を指定します。絶対参照($を付ける)にすることで、数式をコピーしても範囲がズレなくなります。
- 行番号:
- 検索範囲の中に、抽出したい値が「上から何番目の行にあるか」を指定します。
- 検索方法:
- 基本的には
FALSEを指定します。- FALSE: 検索値と「完全に一致」するものを抽出します。
- TRUE(省略):近似値を探すため、間違った値を抽出することがあります。
- 基本的には
VLOOKUP関数との違い

「HLOOKUP」と「VLOOKUP」は検索する方向が異なりますが、引数などの仕組みは同じです。
- VLOOKUP関数: データを「縦」に検索して、指定した「列」の値を抽出します。縦方向の表からデータを抽出するときに使います。
- HLOOKUP関数: データを「横」に検索して、指定した「行」の値を抽出します。横方向の表からデータを抽出するときに使います。
上位互換のXLOOKUP関数を使おう!

これまではVLOOKUP関数やHLOOKUP関数を使うのが主流でしたが、現在は上位互換の「XLOOKUP関数」を使うのがおすすめです。
例:=XLOOKUP("ばなな",$B$4:$D$4,$B$5:$D$6)
💡 ポイント:
- まとめて複数の値を抽出できる:HLOOKUP関数は1行ずつしか抽出できませんでしたが、XLOOKUP関数は1つの式で複数行をまとめて表示できます。
- 下の行も検索できる:HLOOKUP関数は「選択した範囲の1番上の行」しか検索値に指定できませんでしたが、XLOOKUP関数は検索範囲を自由に指定できます。
- 垂直方向も水平方向も検索できる:XLOOKUP関数はVLOOKUP関数が担当していた「縦の検索」、HLOOKUP関数が担当していた「横の検索」の両方に対応できます。
- 単体でエラー回避できる:HLOOKUP関数はIFERROR関数と組み合わせる必要がありますが、XLOOKUP関数には「見つからない場合の値」を指定できます。
XLOOKUP関数の引数:(検索キー, 検索範囲, 結果の範囲, [見つからない場合の値], [一致モード], [検索モード])
📖 XLOOKUP関数の詳しい解説は「XLOOKUP関数の使い方!VLOOKUPとの違いを徹底解説」の記事をご覧ください。