よろずやIT
アプリ

XLOOKUP関数の使い方|VLOOKUPとの違いと、エラーの直し方

執筆・監修:よろずやIT編集部|編集方針を見る

結論:まずここだけ読めばOK

詳しい手順・原因は、この下で解説しています。

アプリのイラスト

結論: XLOOKUP関数は、検索値を、検索範囲から探し、対応する戻り範囲の値を返す関数です。VLOOKUPと違い、左側の列も検索でき、列番号を数える必要がありません。省略した時は完全一致で、見つからない時の表示も、第4引数で指定できます。使えるのは、Microsoft 365と、Excel 2021以降です。

XLOOKUPとは

表の中から、条件に合う行を探して、別の列の値を取り出す関数です。たとえば、「社員番号から、氏名を調べる」ような場面で使います。

書き方

XLOOKUP関数の4つの引数と、社員番号から氏名を探す例を示した図解

=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合])
引数 内容
検索値 何を探すか(例:E1に入力した社員番号)
検索範囲 どこから探すか(例:社員番号の列)
戻り範囲 何を返すか(例:氏名の列)
見つからない場合 なかった時に、表示する内容(省略可)

例:社員番号から、氏名を探す

社員番号 氏名
101 佐藤
102 田中
103 鈴木

E1に「102」と入力して、E2に次の式を入れます。

=XLOOKUP(E1, A2:A4, B2:B4, "該当なし")

結果は「田中」です。E1に、表にない番号(たとえば「999」)を入れると、「該当なし」と表示されます。

VLOOKUPとの違い

VLOOKUPとXLOOKUPを、検索の向き、戻す列の指定、省略した時の一致などで比べた図解

VLOOKUP XLOOKUP
検索の向き 検索列は、範囲の左端のみ 左右どちらも検索できる
戻す列の指定 左から数えた列番号 戻す範囲を直接選ぶ
省略した時の一致 近似一致(TRUE) 完全一致
見つからない時 #N/A 第4引数で、表示を指定できる
使えるExcel 古い版でも使える 365・2021以降

VLOOKUPの使い方は、VLOOKUP関数の使い方で解説しています。

XLOOKUPが便利な点

オプションの引数

第5引数と、第6引数で、探し方を変えられます。

引数 値 意味
第5引数(一致モード) 0 完全一致(既定)
-1 完全一致。なければ、次に小さい値
1 完全一致。なければ、次に大きい値
2 ワイルドカード(*、?)を使った一致
第6引数(検索モード) 1 先頭から検索(既定)
-1 末尾から検索

同じ値が複数ある時に、最後に出てくる行を取り出したい場合は、第6引数に -1 を指定します。

複数の列を、一度に取り出す

戻り範囲に、複数の列を指定すると、該当する行の値が、横に並んで表示されます。

=XLOOKUP(E1, A2:A4, B2:D4, "該当なし")

B列からD列までの値が、まとめて表示されます。

エラーが出た時の確認

エラー 原因 対処
#N/A 検索値が、検索範囲に見つからない スペース・全角半角・文字列と数値の違いを確認。第4引数で表示を指定する
#VALUE! 検索範囲と戻り範囲の大きさが違う 同じ行数(列数)にそろえる
#NAME? XLOOKUPが使えない版のExcel 版を確認する(365・2021以降)
想定と違う値 同じ値が複数あり、最初の行が返っている 検索モードを変える。重複を確認する

数字が文字列になっている場合の直し方は、Excelの文字と数字の変換、先頭の0が消える場合は、先頭の0が消える時の対処をご覧ください。重複した値の確認は、Excelで重複を見つけて削除する方法が参考になります。

古いExcelを使う人と、共有する時

XLOOKUPは、Excel 2019以前では使えません。ファイルを共有する相手が古い版の場合、**#NAME?**と表示されることがあります。

まとめ

関連記事:VLOOKUP関数の使い方、IF関数の使い方、ピボットテーブルの使い方、Excelでプルダウンリストを作る方法、Excelで重複を見つけて削除する方法

PRExcel操作&関数 入門事典 (日経BPパソコンベストムック) [ 日経PC21 ]

Excel操作&関数 入門事典 (日経BPパソコンベストムック) [ 日経PC21 ]

¥1,100

楽天で見る
SHAREXLINEはてブ

よくある質問

Q.XLOOKUPが使えません。なぜですか?

A.XLOOKUP関数は、Microsoft 365と、Excel 2021以降で使えます。Excel 2019以前では、使えません。ほかの人とファイルを共有する時は、相手のExcelのバージョンも確認してください。古い版を使う相手には、VLOOKUP関数や、INDEX関数とMATCH関数の組み合わせを使います。

Q.VLOOKUPとXLOOKUPは、どちらを使えばいいですか?

A.お使いのExcelがXLOOKUPに対応していて、ファイルを共有する相手も対応しているなら、XLOOKUPのほうが、書きやすく、ずれにくいので、おすすめです。古いExcelを使う人とやり取りする場合は、VLOOKUPのほうが、確実です。

Q.#N/Aが出ます。どうすればいいですか?

A.検索値が、検索範囲に見つからない時に出ます。よくある原因は、スペースの有無、全角と半角の違い、文字列として入っている数字と、数値の違いです。XLOOKUPの第4引数に、見つからない時の表示(たとえば『該当なし』)を指定すると、#N/Aの代わりに表示できます。

Q.#VALUE!が出ます。

A.検索範囲と、戻り範囲の、行数(または列数)が違うと、出ることがあります。どちらも、同じ大きさの範囲で指定してください。たとえば、A2:A100を検索範囲にしたら、戻り範囲も、B2:B100のように、同じ行数にします。

Q.複数の列を、一度に取り出せますか?

A.できます。戻り範囲に、複数の列(たとえば、B2:D4)を指定すると、該当する行の、複数の列の値が、横に並んで表示されます(スピルという動きです)。この機能も、Microsoft 365やExcel 2021以降で使えます。

関連記事

最新のIT関連書籍 トップ10

PR / 楽天市場の売れ筋ランキングを定期的に取得しています。価格は変動する場合があるため、購入前に各ストアでご確認ください。