Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2016

ヒント: 任意の方向で動作し、既定で完全一致を返す HLOOKUP の改善されたバージョンである新しい XLOOKUP 関数を使用してみてください。この関数は、前のバージョンよりも使いやすく便利です。

ここでは、Microsoft Excel の HLOOKUP 関数の書式および使用法について説明します。

説明

テーブルの上端行または配列内の特定の値を検索し、テーブルまたは配列内の指定した行から同じ列の値を返します。 HLOOKUP 関数は、比較する値がデータ テーブルの上端行にあり、指定した行数分だけ下を参照する場合に使用します。 比較する値が検索データの左側の列にある場合は、VLOOKUP 関数を使用してください。

HLOOKUP 関数の "H" は、横方向 (horizontal) の検索を意味します。

書式

HLOOKUP(検索値, 範囲, 行番号, [検索の型])

HLOOKUP 関数の書式には、次の引数があります。

  • 検索値    必ず指定します。 テーブルの上端行で検索する値を指定します。 検索値には、値、参照、または文字列を指定します。

  • 範囲    必ず指定します。 データを検索する情報のテーブルです。 セル範囲への参照またはセル範囲名を使用します。

    • 範囲の上端行の列のデータは、文字列、数値、論理値のいずれでもかまいません。

    • 検索の型に TRUE を指定した場合、範囲の上端行の列のデータは、昇順で配置しておく必要があります。つまりは、~-2、-1、0、1、2~、A~Z、FALSE から TRUE の順となります。その他の場合、HLOOKUP では正しい値を得られない場合があります。 検索の型に FALSE を指定した場合、範囲を並べ替える必要はありません。

    • 英字の大文字と小文字は区別されません。

    • 値を昇順に、左から右に並べ替えます。 詳細については、「範囲またはテーブルのデータを並べ替える」を参照してください。

  • 行番号    必ず指定します。 一致する値を返す、範囲内の行番号。 行番号に 1 を指定すると、範囲の最初の行の値が返され、行番号に 2 を指定すると、範囲の 2 番目の行の値が返され、以降同様に処理されます。 行番号が 1 より小さい場合、エラー値 #VALUE! が返され、行番号が範囲の行数より大きい場合は、エラー値 #REF! が返されます。

  • 検索の型    省略可能です。 HLOOKUP を使用して検索値と完全に一致する値だけを検索するか、その近似値を含めて検索するかを指定する論理値です。 TRUE を指定するか省略した場合、近似値が返されます。 つまり、完全に一致する値が見つからない場合は、検索値未満の最大値が使用されます。 FALSE を指定した場合、HLOOKUP では完全に一致する値が検索されます。 完全に一致する値が見つからない場合は、エラー値 #N/A が返されます。

解説

  • 検索の型に TRUE を指定し、検索値が見つからない場合は、検索値未満で最も大きい値が使用されます。

  • 検索値が範囲の上端行の最小値より小さい場合、エラー値 #N/A が返されます。

  • 検索の型が FALSE で検索値が文字列の場合、検索値で疑問符 (?) またはアスタリスク (*) をワイルドカード文字として使用できます。 ワイルドカード文字の疑問符は任意の 1 文字を表し、アスタリスクは 1 文字以上の任意の文字列を表します。 ワイルドカード文字ではなく、通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に半角のチルダ (~) を付けます。

使用例

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 数式を選択して、F2 キーを押し、さらに Enter キーを押すと、結果が表示されます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

ベアリング

ボルト

4

4

9

5

7

10

6

8

11

数式

説明

結果

=HLOOKUP("ギア", A1:C4, 2, TRUE)

行 1 の "ギア" を検索し、同じ列 (列 A) の行 2 の値を返します。

4

=HLOOKUP("ベアリング", A1:C4, 3, FALSE)

行 1 の "ベアリング" を検索し、同じ列 (列 B) の行 3 の値を返します。

7

=HLOOKUP("ベ", A1:C4, 3, TRUE)

行 1 の "ベ" を検索し、同じ列の行 3 の値を返します。 "ベ" に完全に一致する値が見つからないので、行 1 の中の "ベ" よりも小さい最大値である、列 A の "軸" が使用されます。

5

=HLOOKUP("ボルト", A1:C4, 4)

行 1 の "ボルト" を検索し、同じ列 (列 C) の行 4 の値を返します。

11

=HLOOKUP(3, {1,2,3, "ア", "イ", "ウ", "エ", "オ", "カ"}, 2, TRUE)

3 行の配列定数の中で数値 3 を検索し、同じ列 (ここでは 3 番目) の行 2 から値が返されます。 配列定数の中には、値の行が 3 つあり、各行はセミコロン (;) で区切られています。 "c" は 2 行目および 3 と同じ列の中にあるので、"C" が返されます。

c

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。