VLOOKUPがうまくいきません。
式が複雑だし、他にいい関数はないのでしょうか。
本記事ではこのような悩みにお応えします。
記事の内容
- XLOOKUP関数の紹介
- VLOOKUP関数とXLOOKUP関数の違い
- VLOOKUPよりもXLOOKUPをおすすめする理由
記事を書いた人
Excelにはさまざまな関数が機能として搭載されています。
そのひとつVLOOKUP関数は、指定した値を検索して、その値と同じ行にある別のセルのデータを表示してくれる便利な関数です。
しかし、実際にVLOOKUP関数を使おうとすると、
- 式が難解
- 柔軟性に欠ける
- 編集しているときにエラーが起きやすい
という理由から、苦手意識を持っている方もいらっしゃると思います。
そんなあなたにおすすめな関数が「XLOOKUP関数」です。
XLOOKUPは、VLOOKUPよりも式が簡単でエラーが起きにくい特徴があります。
VLOOKUP関数に苦手意識を感じる方には特におすすめできます。
今回の記事では、VLOOKUP関数を使いこなせていないあなたのために、より簡単なXLOOKUP関数についてご紹介します。
目次
VLOOKUPよりXLOOKUPがおすすめ
XLOOKUPは、VLOOKUPよりも式がシンプルで初心者におすすめできる関数です。
また、VLOOKUPに比べて編集中のエラーが起きにくいので、その後のファイルの修正にも柔軟です。
それぞれの関数を簡単に説明します
VLOOKUP関数の説明(概要)
VLOOKUP関数は、値を検索してそれと同じ行にあるデータを表示します。
VLOOKUP関数は、次の式で指定します。
=VLOOKUP(検索値, 範囲, 列番号, 検索の型)
検索値 | 何を探すか。 検索対象となる値を設定する。 |
範囲 | どこで探すか。 検索値と数式結果(表示したい値)が存在する範囲を指定する |
列番号 | どの列を数式結果として表示させるか。 検索値から数えて何番目のセルを表示させるかを数字で指定する。 |
検索の型 | どんな探し方をするか。 TRUE:検索値と近い値ならOKとする FALSE:検索値と完全一致ならOKとする |
これらのうち、範囲と列番号の指定に柔軟性がないのがVLOOKUPの課題です。
それが原因でうまく機能しなかったり、編集中にエラーが出たりして、使いにくさを感じる場面があります。
あとで詳しく説明します。
XLOOKUP関数の説明(概要)
XLOOKUPも同じ機能を提供してくれますが、VLOOKUPよりも式がシンプルです。
=XLOOKUP(検索値, 検索範囲, 戻り範囲)
検索値 | 何を探すか。 検索対象となる値を設定する。 |
検索範囲 | どこで探すか。 検索値を探す範囲を指定する |
戻り範囲 | どの列で探すか。 数式結果(表示したい値)が存在する列を指定する。 |
「検索したい値」と「表示したい値」が含まれる範囲をそれぞれ指定するだけで、VLOOKUPと同じ結果を得られます。
数式がシンプルなのでエラーが発生しにくく、VLOOKUPよりおすすめできます。
VLOOKUPは範囲・列番号の指定に柔軟性がない
先ほどご紹介したとおり、VLOOKUPは柔軟性がありません。
その原因は範囲と列番号の指定方法にあります。
範囲は、「検索値」が存在する列を必ずその範囲の一番左に指定する必要があります。
このため、下図の例のように検索値よりも左側にあるデータは検索結果として表示できません。
検索値は必ず範囲の左端に指定しないとうまく機能してくれません。
上の例で言えば、範囲指定は$A$8:$E$15ではなく、$B$8:$E$15と指定しなければいけません。
また列番号は検索値からの距離を数字で指定します。
例えば、検索値がA列にある場合、列番号を「2」と指定することで、「C列」の値を表示させることができます。
このため下図のように、新しく列を挿入した場合は、列番号が変わらないので、新しく挿入された列のデータが表示されることになります。
これがVLOOKUPがうまくいかない要因です。
このように、VLOOKUP関数は範囲と列番号の指定に柔軟性が欠けるのが欠点となります。
XLOOKUPは柔軟でシンプル
XLOOKUPの場合は、
- 検索値は左端である必要はありません。
- 表示する値は列名(アルファベット)で指定します。
このことから、検索値が左端になくても同じ行の任意の列の情報を拾ってくれます。
また、編集して新しく列を挿入しても、検索結果でエラーが発生する心配もなくなります。
XLOOKUP関数は、指定方法が簡単でエラーが起きにくい初心者向けの関数です。
そのほか、オプションで
- 見つからなかった場合の動作の指示
- 近似値での検索
- 検索を開始する位置(先頭から or 末尾から)
これらを指定できます。
これらを指定する場合の式は以下になります。
=XLOOKUP(検索値*, 検索範囲*, 戻り範囲*, 見つからない場合, 一致モード, 検索モード)
※「*」は必須指定項目(それ以外は省略可能)
見つからない場合 | 検索値が見つからなかった場合の動作を指定する |
一致モード | 検索値と近い値でもOKとするかを設定する 0:完全一致 1:完全一致(見つからない場合は値の大きな近似値) -1:完全一致(見つからない場合は値の小さな近似値) 2:ワイルドカードを有効化 |
検索モード | 検索を開始する位置を指定する 1:先頭の項目から検索 -1:末尾の項目から逆方向に検索 |
これらを指定するとより複雑な検索に対応できます。
複雑な検索に対応している分、初めて使う場合は難解に感じやすいおと思います。
最初は気にせず省略しちゃいましょう。
Excelが得意でない方はXLOOKUPを使おう
VLOOKUP関数はその柔軟性のなさから、知識がない人にとっては使いづらさを感じるケースがあると思います。
そんな方にはこの記事で紹介したXLOOKUP関数がおすすめです。
- VLOOKUPをうまく使えない。
- 編集中にエラーが起こって直せない。
そんなあなたは、XLOOKUP関数を試してみましょう!
VLOOKUPよりも使いやすいし、活用の場面が多いので、しっかり覚えておきましょう!