要点 —
HLOOKUPはVLOOKUPを横倒しに したもの:最初の行を左から右へ探し、その下の行から値を返します——データが 縦ではなく横方向に走っているときに使います。第4引数の規則も同じ:完全一致にはFALSEを渡します。LOOKUPは両者の祖父で、1つの致命的な制限があります—— 完全一致オプションがまったくない。常に近似一致をし、検索範囲が昇順に ソートされていることを要求します。だからこそ、それは静かに間違った答えを返し、 だからこそ、ほぼ常に置き換えるべきなのです。両者ともすべてのバージョンで動作します;XLOOKUPは水平と垂直を1つの関数で扱います。
=HLOOKUP("Mar", A1:M4, 3, FALSE) ' 1行目で"Mar"を探し、3行目を返す、完全一致
=LOOKUP(F2, A2:A500, C2:C500) ' レガシー:近似のみ、Aはソート必須
VLOOKUP と INDEX/MATCH が検索の大多数をカバー
します。HLOOKUP と LOOKUP は、一族に残る2つの枝です——一方はときどき必要になり、
もう一方はほとんど見分けて引退させるべきものです。両者とも、ゼロから学ぶ新しい概念
ではなく、同じ「なぞって取ってくる」考え方のバリエーションだと見れば、より腑に
落ちます。
この記事で学べること
- 回転した VLOOKUP としての HLOOKUP:行をなぞり、それから下へ読む
- 水平レイアウトが実際に HLOOKUP を正しい道具にするとき
- なぜ
LOOKUPには完全一致がないのか——その1つの致命的な設計欠陥 - 古いブックで見つかる
LOOKUP(2, 1/…)の技と、それが何をしているのか - なぜ XLOOKUP がこの両方を静かに任意(オプション)にするのか
HLOOKUP:VLOOKUPを90度回転
VLOOKUP について知っていることはすべて
HLOOKUP に当てはまります——「列」を「行」に入れ替えるだけ。テーブルの最初の行を
左から右へ探し、値を見つけると row_index_num 行ぶん下へ進みます:
=HLOOKUP(lookup_value, table, row_index_num, [range_lookup])
=HLOOKUP("Mar", A1:M4, 3, FALSE) ' "Mar"は1行目にある;3行目のセルを返す
H は水平(horizontal)の H です。第4引数は VLOOKUP のものと同じように振る舞い
ます:省略すると、最初の行が左から右へソートされている必要がある近似一致になります;
ほぼ常に欲しい完全一致には FALSE を渡します。そして VLOOKUP と同じく、一方向にしか
読みません——一致した行から下へ——なので、欲しい値は検索する行の下になければ
なりません。
HLOOKUPが実際に正解になるとき
HLOOKUP が居場所を得るのは、データが本当に横方向に並んでいるときです:期間ラベル (Jan, Feb, Mar…)が1行目に沿って走り、指標がその下の行に積まれている。これは転置 されたテーブルで、これに対しては HLOOKUP が自然な選択です——VLOOKUP ならデータを 先にピボットする必要があるところです。
' 1行目:Jan Feb Mar Apr ... 2行目:売上 3行目:原価 4行目:利益
=HLOOKUP(G1, A1:M4, 4, FALSE) ' G1 = "Mar" -> 3月の利益
とはいえ、それがどれくらいの頻度で起こるかは正直になりましょう。ほとんどの Excel データは縦方向に保存されています——レコードは下へ、フィールドは横へ——だからこそ VLOOKUP と INDEX/MATCH が支配的で、HLOOKUP は専門家(スペシャリスト)なのです。 レイアウトを自分で制御できるなら、縦方向がほぼ常により良い構造です。HLOOKUP は、 横方向のものを引き継いでしまったときのためのものです。
LOOKUP:1つの致命的欠陥を持つ先祖
LOOKUP は VLOOKUP より古く、ほとんどの現代的な用途から失格させる設計上の選択が
あります:完全一致引数がない。 渡すべき FALSE が存在しないのです。LOOKUP は
常に近似一致をし、検索範囲が昇順にソートされていると常に仮定します。ソート
されていないデータを食わせると、エラーなしで間違った答えを返します——静かな失敗、
しかもそれをオフにする方法がありません。
より有用な「ベクトル形式」は3つの引数を取ります——検索ベクトルと、別々の結果ベクトル:
=LOOKUP(F2, A2:A500, C2:C500) ' A(ソート済み!)を探し、一致するCを返す
検索範囲と結果範囲のその分離は良い性質です——INDEX/MATCH のように左を見られます
——けれど、それはソート済みデータでの強制的な近似一致という代償で買われています。
選べるなら、完全一致の VLOOKUP、
INDEX/MATCH、あるいは
XLOOKUP が、重要なあらゆる面でそれに勝ります。
古いブックにある LOOKUP(2, 1/…) の技
引き継いだシートを開くと、こんな暗号めいたものを見つけるでしょう:
=LOOKUP(2, 1/(A2:A500=F2), C2:C500) ' 最初ではなく、最後の一致を返す
これは LOOKUP の近似的な性質を巧妙に利用したものです。式 1/(A2:A500=F2) は、行が
F2 に一致するところで 1 を、一致しないところで #DIV/0! エラーを生みます。決して
存在しない値である 2 を探すことで、LOOKUP を末尾まで走らせ、見た最後の 1
——つまり最後に一致した行——に落ち着かせます。それは、現代的なツールが存在する前に
「最後の一致」を得る標準的な方法でした。
もう自分で書く必要はありませんが、見分けられるべきです。Excel 365 では、同じ意図が
XLOOKUP の逆方向検索ではるかに明確になります:
=XLOOKUP(F2, A2:A500, C2:C500, , 0, -1) ' -1 = 下から上へ検索 -> 最後の一致
判断:この2つはどこに収まるか
一族をまるごと並べると、決定木は短くなります:
VLOOKUP— 縦方向のデータ、完全一致、右へ 返す。日常の既定。INDEX/MATCH— 縦方向のデータだが、左を見たり、 列の編集に耐えたり、二次元検索をしたいとき。HLOOKUP— データが本当に横方向に水平に走っているとき。LOOKUP— 誰かの古い数式を読んでいるとき。新しい仕事には、置き換えます。XLOOKUP— Excel 365 では、垂直、水平、左、右、 最後の一致、そして「見つからない」の既定値を1つの関数でこなし、HLOOKUP と LOOKUP を ほぼ任意にします。
HLOOKUP も LOOKUP も、進んで探し求めるものではありません。いずれ出会う転置テーブルの ために HLOOKUP を知り、引き継いだときにより良いものへ翻訳できるくらいには LOOKUP を よく知っておきましょう。
ExcelMaster の使いどころ
これらの関数が話題になる半分は、誰かが作ったブックを開いたから——横方向の HLOOKUP
レポートや、当惑させる LOOKUP(2,1/…) の数式——それを理解したり、現代化したりする
必要があるからです。ExcelMaster は既存の数式を読み、それが実際に何をしているかを
説明し、古いやり方が脆いときには明確な XLOOKUP か
INDEX/MATCH に書き直します——だから、あなたが引き継ぐ
のはリスクではなく、結果です。
よくある質問
HLOOKUPとVLOOKUPの違いは?
VLOOKUP は垂直に検索し——最初の列を下へ——右側の列から値を返します。HLOOKUP は
水平に検索し——最初の行を横へ——下の行から値を返します。データが縦ではなく横に
ラベルが並んで配置されているときに HLOOKUP を使います。両者とも同じ第4引数を取り、
FALSE が完全一致を意味します。
LOOKUP関数を避けるべきなのはなぜ?
LOOKUP には完全一致オプションがありません——常に近似一致をし、データが昇順に
ソートされていることを要求するので、ソートされていないデータでは、その挙動を無効に
する方法もなく、静かに間違った答えを返します。代わりに、いずれも完全一致に対応する、
完全一致の VLOOKUP、INDEX/MATCH、または XLOOKUP を使いましょう。
LOOKUP(2, 1/(range=value)) は何をする?
最後に一致した行を返します。1/(range=value) は一致する行に 1 を、それ以外に
エラーを与えます;決して存在しない 2 を探すことで、LOOKUP を最後の 1 に落ち着か
せます。それはレガシーの「最後の一致」の技です——Excel 365 では、より明確な逆方向
検索に XLOOKUP(value, range, result, , 0, -1) を使います。
HLOOKUPはVLOOKUPと同じ完全一致の罠を持つ?
はい。HLOOKUP の第4引数(range_lookup)は既定で TRUE(近似)になり、最初の行が
左から右へソートされている必要があります。VLOOKUP と同じく、完全一致には FALSE を
渡します。
XLOOKUPはHLOOKUPとLOOKUPを置き換えられる?
はい。Excel 365 では、XLOOKUP はどの方向にも検索します
——垂直でも水平でも、前方でも逆方向でも——既定で完全一致、そして組み込みの「見つから
ない」値を備え、HLOOKUP と LOOKUP がすることのすべてと、それ以上をカバーします。
検証環境
検証環境: Excel 365(Windows 11)— 最終確認 2026-07-05。
関連ガイド: ExcelのVLOOKUP · ExcelのINDEX & MATCH · XLOOKUP(2025) · ExcelのIFERROR · ExcelのFILTER
