エクセル入門
HLOOKUP関数(範囲の上端行で値検索し対応セル値)

Excelの初心者向け入門解説
最終更新日:2022-10-14

HLOOKUP関数(範囲の上端行で値検索し対応セル値)


検索値で、セル範囲の最初の行を検索し、その範囲の同じ列にある任意のセルから値を返します。
Vは横方向(horizontal)の意味です。
つまり横方向の表に対して、検索値を横に探す場合に使用します。


エクセルの表は、縦方向が基本です。
まずは、VLOOKUP関数をしっかり習得してください。
・VLOOKUP関数の書式 ・VLOOKUP関数:近似一致(検索方法=TRUE)の使用例 ・VLOOKUP関数:完全一致(検索方法=FALSE)の使用例

HLOOKUP関数の書式

=HLOOKUP(検索値,範囲,行番号,検索方法)

検索値

表または範囲の上端の行で検索する値を指定します。
※ワイルドカードが使用できますが、あまり使う事はありません。
ワイルドカード文字
(?)半角の疑問符:任意の 1 文字

(*)半角のアスタリスク:任意の文字列
通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に、"~*"のように半角のチルダ (~) を付けます。

範囲

データを含むセル範囲です。

列番号

目的のデータが入力されている行を、範囲内の上端から数えた行数で指定します。

検索方法

TRUE(1)を指定すると、
検索値と完全に一致する値、またはその近似値(検索値未満の最大値)が返されます。
※範囲の上端の行にある値を昇順に並べ替えておく必要があります。


FALSE(0)を指定すると
検索値と完全に一致する値だけが検索されます。
完全に一致する値が範囲の上端の行に複数ある場合は、最初に見つかった値が使用されます。
完全に一致する値が見つからない場合は、エラー値 #N/A が返されます。
※TRUE(1)の使い方は少し難しいです、ほとんどの場合、FALSE(0)で良いはずです。

近似一致(検索方法=TRUE)の使用例
以下はVLOOKUPでの例ですが、縦と横の違いだけですので参考にしてください。

数値範囲で表検索するVLOOKUP近似一致
・表をエクセルで扱えるように調整する ・VLOOKUP関数の近似一致 ・VLOOKUP近似一致がどのように値を探しているか ・VLOOKUP近似一致の表を作成する場合の注意点 ・VLOOKUP関数に関する参考ページ

HLOOKUP関数の使用例

A B C D E F G H I
11 21 22 23 24 25 26 27 28 29
12 営業 総務 人事 製造 営業 総務 人事 製造 営業
13 鈴木 佐藤 佐々木 小林 山田 高橋 伊藤 山本 田中

上記の表において、
A1セルにIDとして、「22」が入っている場合、
該当IDの部署・氏名を取得する場合、
=HLOOKUP(A1,11:13,2,0)
とすることで、「営業」と表示されます。

=HLOOKUP(A1,11:13,3,0)
とすることで、「佐藤」と表示されます。

書式の
=HLOOKUP(検索値,範囲,行番号,検索方法) と、良く見比べて理解して下さい。
特に、行番号は、範囲内の上から1,2,となります。


Officeサポート HLOOKUP関数
ワークシート関数一覧

・文字列関数 ・日付と時刻の関数 ・情報関数 ・論理関数 ・検索/行列関数 ・数学/三角関数 ・統計関数 ・財務関数 ・エンジニアリング関数 ・データベース関数 ・アドイン/オートメーション ・キューブ ・Microsoft Office のサポート
ワークシート関数の一覧(2010以降)
・Excel2010で追加されたワークシート関数 ・Excel2013で追加されたワークシート関数 ・Excel2016/Excel2019で追加されたワークシート関数 ・Excel2021で追加されたワークシート関数 ・Excel2021より後の365で追加されたワークシート関数 ・Microsoft「Office のサポート」



同じテーマ「エクセル入門」の記事

COUNTA関数(空白以外のセルの個数)
COUNTIF関数(検索条件に一致するセルの個数)
VLOOKUP関数(範囲の左端列で値検索し対応セル値)
HLOOKUP関数(範囲の上端行で値検索し対応セル値)
AND関数(すべての引数がTRUEのときにTRUE)
OR関数(いずれかの引数がTRUEのときにTRUE)
NOT関数(論理否定:TRUEをFALSEに、FALSEをTRUEに)
IS関数(対象をチェックし、結果に応じてTRUE,FALSE)
COLUMN関数(セル参照の列番号)
ROW関数(セル参照の行番号)
CONCATENATE関数(複数の文字列を結合)


新着記事NEW ・・・新着記事一覧を見る

数字(1~50)を丸付き数字に変換するVBA|VBA技術解説(2022-11-15)
TEXTAFTER関数(テキストの指定文字列より後ろの部分を返す)|エクセル入門(2022-11-14)
TEXTBEFORE関数(テキストの指定文字列より前の部分を返す)|エクセル入門(2022-11-14)
TEXTSPLIT関数(列と行の区切り記号で文字列を分割)|エクセル入門(2022-11-12)
LAMBDA以降の新関数はVBAで使えるか|VBA技術解説(2022-11-11)
WRAPCOLS関数(1次元配列を指定数の列で折り返す)|エクセル入門(2022-11-08)
WRAPROWS関数(1次元配列を指定数の行で折り返す)|エクセル入門(2022-11-08)
EXPAND関数(配列を指定された行と列に拡張する)|エクセル入門(2022-11-07)
TAKE関数(配列の先頭/末尾から指定行/列数を取得)|エクセル入門(2022-11-06)
DROP関数(配列の先頭/末尾から指定行/列数を除外)|エクセル入門(2022-11-06)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.繰り返し処理(For Next)|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.Excelショートカットキー一覧|Excelリファレンス
7.並べ替え(Sort)|VBA入門
8.エクセルVBAでのシート指定方法|VBA技術解説
9.マクロって何?VBAって何?|VBA入門
10.ExcelマクロVBAの基礎を学習する方法|エクセルの神髄




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ