XLOOKUP
関数は、検索範囲を検索して見つかった一致の位置に基づき、結果範囲内の値を返します。一致するものが見つからない場合は、最も近い値が返されます。クロス検索。検索列内で一致が見つかった位置のデータ列の値を返します。
使用例
=XLOOKUP("Apple",table_name!fruit,table_name!price)
構文
XLOOKUP(検索キー,検索範囲,結果範囲,見つからない場合の値,一致モード)
検索キー
: 検索する値を指定します(例:42
、"ネコ"
、B24
)。検索列
: 検索対象の列を指定します。結果列
: 結果を取り出す対象の列を指定します。見つからない場合の値
: [省略可 - デフォルトは#N/A
] 一致するものがない場合に返される値です。一致モード
: [省略可 - デフォルトは0
] 検索キーに一致するものを検出する方法を指定します。0
: 完全一致。1
: 完全一致、または検索キーより大きい次の値を一致とみなします。-1
完全一致、または検索キーより小さい次の値を一致とみなします。2
: ワイルドカード一致。
ヒント: BigQuery の XLOOKUP では検索モード
はサポートされていません。
使用例
VLOOKUP("Apple", A2:E, 5, FALSE)
の代わりに XLOOKUP("Apple", A2:A, E2:E)
を使用しますHLOOKUP("Price", A1:E6, 6, FALSE)
の代わりに XLOOKUP("Price", A1:E1, A6:E6)
を使用します一致する列が出力列の右側にある場合は
XLOOKUP
を使用しますXLOOKUP("Apple", E2:E7, A2:A7)
。VLOOKUP
で記述すると、VLOOKUP("Apple", {E2:E7, A2:A7}, 2, FALSE)
となります構文
XLOOKUP(検索キー, 検索範囲, 結果の範囲, 見つからない場合の値, 一致モード, 検索モード)
検索キー
: 検索する値を指定します(例:42
,"ネコ"
、B24
)。検索範囲
: 検索対象の範囲です。この範囲には単一の行または列を指定する必要があります。結果の範囲
: 結果を取り出す対象の範囲を指定します。この範囲の行数または列数は、検索方法に応じて検索範囲
の行数または列数と一致する必要があります。見つからない場合の値
: [省略可 - デフォルトは#N/A
] 一致するものがない場合に返される値です。一致モード
: [省略可 - デフォルトは0
]検索キー
の一致とみなす基準を指定します。0
は完全一致です。1
は完全一致、または検索キー
より大きい次の値を一致とみなします。-1
は完全一致、または検索キー
より小さい次の値を一致とみなします。2
はワイルドカードの文字列に一致する値を一致とみなします。
検索モード
: [省略可 - デフォルトは1
]検索範囲
を検索する方法を指定します。1
は先頭から末尾に向かって検索します。-1
は最後のエントリから最初のエントリに向かって検索します。2
は、指定された範囲をバイナリ検索を使用して検索します。事前に範囲内を昇順に並べておく必要があります。-2
は、指定された範囲をバイナリ検索を使用して検索します。最初に範囲を降順で並べ替える必要があります。
メモ
結果の範囲
が複数の行または列の場合、出力は検索範囲
で一致が見つかったインデックスの行または列全体になります。
例
すべての例のルックアップ テーブル。
一致モード
と検索モード
を省略し、見つからない場合の値を指定して合計販売金額を返す XLOOKUP
。一致モード = 0
、検索モード = 1
または 検索モード = -1
を指定して合計販売金額を返す XLOOKUP
。一致モード = 1
または 一致モード = -1
を指定し、検索モード
を省略して合計販売金額を返す XLOOKUP
。水平一致を使用して列全体を返す
XLOOKUP
。