いきなり答える備忘録

Google Workspace・Microsoft 365・LibreOfficeなどに関するメモ

(Gスプレッドシート)XLOOKUP関数でワイルドカードを使う

 Googleスプレッドシートで新たに導入されたXLOOKUP関数についてです。VLOOKUP関数とは異なり、検索値にワイルドカードを用いる場合には、同時に引数でそのことを指定する必要があります。

  • XLOOKUP関数で検索値にワイルドカードを用いる場合、第5引数(一致モード)に「2」と指定します。

手順

 まずは失敗例です。
 画像では、F3セルの文字列を含む(部分一致)メニューをB列から検索して、対応する値段とカロリーの値をC,D列から抽出しようとしています。
 そこでG3セルに「=XLOOKUP("*"&F3&"*",B3:B7,C3:D7)」と入力したところですが、結果は#N/Aエラーとなりました。

 ワイルドカードの書き方に間違いはないのですが、XLOOKUP関数の場合これではうまくいきません。


 正解は、さらに第5引数として「2」と指定することです。これで抽出が成功します。

 G3セル

=XLOOKUP("*"&F3&"*",B3:B7,C3:D7,,2)

 検索値にワイルドカードを使うには、第5引数として「2」と指定する必要があります。
 他の関数ではワイルドカードを用いるために特別の引数は必要ないのですが、XLOOKUP関数とXMATCH関数では必須(XMATCH関数の場合は第3引数)となっています。
 引数を指定してワイルドカードを忘れるというのもよくあるミスです。