XLOOKUP関数の使い方
最短回答
=XLOOKUP(探す値, 探す範囲, 返す範囲) と書きます。 既定で完全一致、左側の列も返せます。
書式
=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合])引数の意味
| 引数 | 意味 | 指定の例 | 備考 |
|---|---|---|---|
| 検索値 | 探したい値 | A8 | — |
| 検索範囲 | 探す1列(または1行) | $A$2:$A$5 | 表全体ではなく、探す列だけを指定する |
| 戻り範囲 | 返したい1列(または1行) | $B$2:$B$5 | 検索範囲より左でもよい |
| 見つからない場合 | 該当が無いときに返す値 | "未登録" | 省略すると #N/A。IFERROR が不要になる |
最小の例
=XLOOKUP(A8, $A$2:$A$5, $B$2:$B$5)VLOOKUP と違い、列番号を数える必要がありません。 表の途中に列を挿入しても壊れないのはこのためです。
使うときの手順
- 結果を表示したいセルを選び、= に続けて
XLOOKUP(と入力します。 - 探したい値のセル(例:
A8)をクリックし、, を入力します。 - 探す列だけをドラッグで選び、F4 で固定して , を入力します。
- 返したい列だけをドラッグで選びます。
- 必要なら , のあとに見つからない場合の値を入力し、) で閉じて Enter を押します。
使えるバージョンに注意
XLOOKUP は Microsoft 365 と Excel 2021 以降で使えます。 Excel 2019 以前で開くと #NAME? になります。 社外や他部署にファイルを渡す場合は、相手の環境を確認してから使ってください。
やってみる
「列番号を数えない」「左側も返せる」という感覚は、実際に書いてみると一度で掴めます。
この操作は、下の練習で実際に試せます。
この操作は、下の練習で実際に試せます。
この操作は、下の練習で実際に試せます。
よくある失敗
- #NAME? になる
そのExcelがXLOOKUPに対応していません。Excel 2019 以前では使えないので、VLOOKUPで書き直します。
- #VALUE! になる
検索範囲と戻り範囲の行数が合っていません。
A2:A5とB2:B10のように範囲がずれていないか確認します。 - 表全体を指定してしまう
XLOOKUP の第2引数は探す1列だけです。 VLOOKUP の癖で
A2:C5と表全体を指定すると正しく動きません。 - 下にコピーするとずれる
検索範囲と戻り範囲に
$が付いていません。範囲を選んだ状態で F4 を押して固定します。
仕事ならどれを使う?(VLOOKUPとの違い)
| 観点 | XLOOKUP | VLOOKUP |
|---|---|---|
| 既定の検索方法 | 完全一致 | 近似一致(FALSE を書き忘れると事故る) |
| 左側の列を返す | できる | できない |
| 列の挿入 | 壊れにくい | 列番号がずれて壊れる |
| 見つからないとき | 第4引数で指定できる | IFERROR が必要 |
| 使える環境 | Microsoft 365 / Excel 2021 以降 | すべてのバージョン |
自分の環境で完結する作業なら XLOOKUP、誰が開くか分からないファイルなら VLOOKUPが安全です。機能の優劣ではなく、配布先で決めます。
Googleスプレッドシートの場合
Googleスプレッドシートでも XLOOKUP が使えます。バージョンの制約が無いため、共有する相手の環境を気にする必要はありません。