メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

ヒント: 任意の方向で動作し、既定で完全一致を返す 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

ヘルプを表示

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

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

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

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×