Office関連

[Excel]XLOOKUP関数でより簡単に値を検索できるようになりました!

下記記事の通り、2019年8月末にVLOOKUP関数やHLOOKUP関数の後継となる新しい関数「XLOOKUP」関数が発表されました。

リリースノートにある通り、Insider版のExcel(バージョン 1909 (ビルド 12026.20000)以降)ではすでに使用できるようになっており、日本語版の関数のヘルプページも用意されています。

この新しく追加されたXLOOKUP関数が私の環境でも使えるようになったので、さっそく試してみました。

※ 下記情報はInsider版のOfficeを元にしています。バージョンによって、名称や機能そのものが変更される可能性があります。

XLOOKUP関数の説明(関数のダイアログより)

範囲または配列で一致の検索を行い、2 つめの範囲または配列から対応する項目を返します。既定では、完全一致が使用されます。

使い方
=XLOOKUP(検査値, 検査範囲, 戻り配列, [一致モード], [検索モード])
引数
引数 説明
検索値(必須) 検索する値を指定します。
検索範囲(必須) 検索対象の配列または範囲を指定します。
戻り配列(必須) 返される配列または範囲を指定します。
一致モード(省略可能) 検索範囲内の値に対する検索値の一致方法を指定します。

  • 0:完全一致(既定)
  • -1:完全一致または次に小さい項目
  • 1:完全一致または次に大きい項目
  • 2:ワイルドカード文字との一致
検索モード(省略可能) 使用する検索モードを指定します。既定では、先頭から末尾への検索が使用されます。

  • 1:先頭から末尾へ検索(既定)
  • -1:末尾から先頭へ検索
  • 2:バイナリ検索 (昇順で並べ替え)
  • -2:バイナリ検索 (降順で並べ替え)

関数の動作

まずは、下図のような簡単な表で、従業員番号を検索値として、名前から性別までを取得してみます。

  • 検索値:$G$2
  • 検索範囲:$A$2:$A$21
  • 戻り配列:$B$2:$E$21
  • 式:=XLOOKUP($G$2,$A$2:$A$21,$B$2:$E$21)

戻り配列として複数列指定しているので、結果は下図のようにスピル(「Excelの使い方が激変する「スピル」」参照)で返ってきます。

もちろん、下記のように引数としてテーブルを指定することもできます。

=XLOOKUP($G$2,サンプルテーブル[従業員番号],サンプルテーブル[[名前]:[性別]])

列ではなく行を指定することで、下図のように水平方向に検索することもできます。

つまり、XLOOKUP関数さえあれば、VLOOKUP関数やHLOOKUP関数を使う必要はなくなるわけです。

便利なワイルドカード

上記の通り、XLOOKUP関数の第4引数・一致モードを「2」とすることで、検索にワイルドカード(「?」(疑問符)、「*」(アスタリスク)、「~」(チルダ))を用いることができます。

  • ?:任意の一文字を表します。
  • *:任意の文字数の文字列を表します。
  • ~:「?」や「*」、「~」を検索する場合に、検索文字列の前にチルダを使用します。

おわりに

今回、軽くXLOOKUP関数を触ってみましたが、非常に便利です。上でも書きましたが、これさえあればVLOOKUP関数やHLOOKUP関数は必要無い位に便利です。

ただ、個人的には、“XLOOKUPに対応していない下位のバージョンで使用できないのは大きな弱点”ではないかと思います。
(XLOOKUP関数に対応していないバージョンのExcelでは、「_xlfn.XLOOKUP」となり、#NAME?エラーを返します。)

2019年9月時点では、まだInsider版のExcelでしか使用できないため、顧客や取引先といった、Officeのバージョンが統一されていない環境下でファイルをやり取りする場合には、本関数を使用しない方が良いでしょう。

[VBA]ユーザーフォーム上のコンボボックスでオートコンプリート機能を実装する方法前のページ

Nintendo Switch LiteはHDMIで外部出力できるの?次のページ

関連記事

  1. Office関連

    インストールされているアプリケーション一覧を取得するVBAマクロ

    端末にインストールされているアプリケーション名を調べる必要があったので…

  2. Excel

    SeleniumBasic(Selenium VBA)がMicrosoft Edgeに対応しました。…

    言わずと知れたWebブラウザーの自動制御ツール「Selenium」のV…

  3. Office関連

    [リボン・カスタマイズ]アクティブシートにより表示するグループを切り替える。

    Excelで、選択しているシートによって表示するグループを切り替えたい…

  4. Excel

    フォルダ内にあるExcelファイルをカウントするVBScript

    「フォルダ内 Excel 数える VBScript」といったキーワード…

  5. Office関連

    [PowerPoint]Applicationオブジェクトのイベントを利用する

    PowerPointのApplicationオブジェクトには、スライド…

  6. Office関連

    Visual Studio Community 2015でOffice開発する。

    「Microsoft、統合開発環境「Visual Studio 201…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP