目次
Microsoft Excelでは、よく知られていることかもしれません。 VLOOKUP機能 一方、Excel 365で追加されたXLOOKUP関数は、使い勝手を考えると前者を上回る可能性が高いです。 今回は、この2つの便利なルックアップ関数、XLOOKUPと ブイルック 適切な例と適切な図解で
練習用ワークブックをダウンロードする
この記事の作成に使用したExcelワークブックをダウンロードすることができます。
XLOOKUPとVLOOKUPの比較.xlsxExcelのXLOOKUPとVLOOKUPの基礎知識
XLOOKUP関数
があります。 XLOOKUP 関数は,ある範囲あるいは配列を検索し,それに一致する項目を2番目の範囲あるいは配列から返します。 デフォルトでは,完全一致が使われます。 この関数の一般的な式は,以下のとおりです。
=XLOOKUP(lookup_value、lookup_array、return_array、[if_not_found]、[match_mode]、[search_mode])
VLOOKUP関数
があります。 ブイルック 関数は,表の左端の列から値を探し,指定した列から同じ行の値を返す。 デフォルトでは,表のソート順は しょうじゅんれい この関数の一般式は次のようなものである。
=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
引数 XLOOKUP関数の説明
論証 | 必須/オプション | 説明 |
---|---|---|
ルックアップバリュー | 必須 | データテーブルの検索対象となる指定された値。 |
ルックアップ_アレイ | 必須 | ルックアップ値を検索するセル範囲または配列。 |
return_array | 必須 | 出力データを抽出するセルまたは配列の2番目の範囲。 |
[if_not_found]です。 | オプション | ルックアップ値が見つからない場合、テキスト形式でカスタマイズされたメッセージが表示されます。 |
[match_mode】。] | オプション | この関数は、指定された条件に基づく完全一致を探すか、ワイルドカード文字による一致を探すかを定義します。 |
[search_mode】。] | オプション | 検索順序(昇順または降順、最後から最初または最後から最後)を定義します。 |
引数 VLOOKUP関数の説明
論証 | 必須/オプション | 説明 |
---|---|---|
ルックアップバリュー | 必須 | データテーブルの検索対象となる指定された値。 |
table_array | 必須 | ルックアップ値を検索するセル範囲または配列。 |
col_index_num | 必須 | 指定された配列中の、戻り値が存在する列のインデックス番号。 |
[range_lookup】。] | オプション | 完全一致または近似一致を定義する。 |
5 XLOOKUPとVLOOKUPの使用方法の比較例
また、VLOOKUP関数やXLOOKUP関数をどのような場面で使えばよいのか、データセットの操作の中で確認してみましょう。
1.一意な値を調べてデータを抽出するXLOOKUPとVLOOKUP
次の図では、人気のあるスマートフォンの端末とそのスペックのデータセットが示されています。 このデータセットを使用することで、スマートフォンがどのようなものであるかを知ることができます。 ブイエルオークアップ と XLOOKUP を別途用意し、指定されたルックアップ値に基づいてユニークなデータを抽出するために、これらの関数がどのように機能するかを見ていきます。
例えば、Samsung S21 Ultraのスペックをデータテーブルから抽出します。
を適用することになりました。 ブイルック 関数の出力に セルC16 の場合、必要な計算式は次のようになります。
=VLOOKUP(B16,B5:E13,{2,3,4},FALSE)
を押した後 入力 をクリックすると、指定したスマートフォンのすべての情報が表で表示されます。
ここで、もし XLOOKUP 関数の代わりにVLOOKUP関数を使用すると、出力 セルC16 は、以下の式で埋め込まれます。
=XLOOKUP(B16,B5:B13,C5:E13,,0)
を押した後 入力 を使用したときと同様の結果が得られます。 ブイルック 関数を使用します。
つまり、この2つの関数を使う場合の基本的な違いは ブイルック は,配列中の指定された列番号から複数の値を取り出しているのに対し XLOOKUP は,仕様を含むセル範囲を戻り配列の引数として受け取り,同様の出力を返しました.
続きを読む Excel VLOOKUPで複数の値を縦に返す
2.VLOOKUPで検索値が見つからない場合、メッセージを表示できない
ここで、ルックアップ値がデータテーブルから見つからなかった場合を考えてみましょう。 そこで、ルックアップ値として使用するのは ブイルック 関数が返す #該当なし のエラーが発生します。 XLOOKUP 関数は、ルックアップ値がテーブルで見つからなかった場合の出力メッセージをカスタマイズできるようにします。
と仮定して、Xiaomi Mi 10 Proのスペックを以下の表で確認することにします。
にルックアップ値が眠っているので セル B16 で必要な計算式を作成します。 ブイルック 関数を出力します。 セルC16 になります。
=VLOOKUP(B16,B5:E13,{2,3,4},FALSE)
を押した後 入力 を返します。 #該当なし ルックアップ値がデータテーブルにないため、エラーが発生しました。
これで、メッセージをカスタマイズする場合 XLOOKUP もしルックアップ値が見つからなければ,必要な数式を セルC16 は、こんな感じでしょうか。
=XLOOKUP(B16,B5:B13,C5:E13,"Not Found",0)
を押した後 入力 の場合、この関数は指定されたメッセージを返します。 "Not Found" .
でカスタマイズしたメッセージを表示させたい場合。 ブイルック 関数を使用する場合、ここでIF関数とVLOOKUP関数を組み合わせて使用する必要があります。
続きを読む VLOOKUPでマッチがあるのになぜN/Aを返すのか?
類似の読み物
- VLOOKUPが動作しない(8つの理由と解決策)。
- ExcelのLOOKUPとVLOOKUP:3つの例付き
- INDEX MATCHとVLOOKUP関数の比較 (9例)
- ExcelでVLOOKUPを複数条件で使用する(6つの方法+代替案)
- 複数のシートでExcelのSUMIF & VLOOKUPを結合する方法
3.VLOOKUPは一番左の列の値だけを検索する
次の図では、データセットが少し変更されています。 デバイス名を含む列がデータテーブルの最後に移動しています。 ご存じのように、デバイス名は ブイルック 関数は表の左端の列からしか値を探さないが、今度は表の右端の列から値を探した場合に、関数が返す出力を調べてみよう。
で必要な機能 セルC16 になります。
=VLOOKUP(B16,B5:E13,{1,2,3},FALSE)
を押した後 入力 を見つけることができます。 #該当なし というエラーが返されることがわかりました。 ブイエルオークアップ 関数では,左端の列からしか値を探すことができないので,そうしないと期待した結果が表示されません。
しかし、その XLOOKUP XLOOKUP関数を使えば、セル範囲やルックアップ配列を指定するだけで、表中の任意の場所をルックアップ値として検索することができます。
で指定されたデバイスのテーブルから利用可能なデータを抽出するためです。 セル B16 を実行すると、XLOOKUP関数は次のような構文で出てきます。
=XLOOKUP(B16,E5:E13,B5:D13,,0)
を押した後 入力 をクリックすると、指定したスマートフォン端末の抽出されたデータがすぐに表示されます。
続きを読む Excel VLOOKUPで列の最後の値を検索する(代替案あり)
4.XLOOKUPのみで、最後の出現回数を元にデータを抽出する
があります。 XLOOKUP は、テーブルの中で最後に出現したルックアップ値に基づいてデータを引き出します。 例えば、以下のようなスマートフォン端末を調べることができます。 B列 は、Bionicチップセットを採用した最後の1台です。
との必要な計算式。 XLOOKUP での機能 セルC16 であるべきです。
=XLOOKUP(B16,C5:C13,B5:B13,,0,-1)
を押した後 入力 の場合、対応するデバイス名を一発で返します。
この関数では、[search_mode]引数を使用しています。 '-1' は,関数が最後の値から最初の値を探すことを意味します。 '1' をここで指定すると、この関数は先頭から最後までを見渡すことになります。
それどころか ブイルック この関数自身は、テーブル内の最後の出現箇所からデータを抽出することはできません。 データテーブル内の最後の出現箇所から値を検索するためには、他の関数と組み合わせる必要があるかもしれません。
続きを読む エクセルで複数のワークシートからデータを引き出す方法(4つの簡単な方法)
5.XLOOKUPインテーク ワイルドカード文字を使用するためのオプションの引数
最後の例では、「Select」ボタンをクリックしたときに表示される ブイエルオークアップ と XLOOKUP 例えば、あるスマートフォン端末の型番「S21」を検索して、利用可能なスペックを調べるというものだ。
の使用で ワイルドカード文字 のみならず アンパサンド(&) 演算子は ブイルック 関数を出力します。 セルC16 はこのようになります。
=VLOOKUP("*"&B16&"*",B5:E13,{2,3,4},FALSE)
を押した後 入力 とすると、この式は与えられたデータセットからSamsung S21 Ultraのすべての仕様を返します。
では、使用中に XLOOKUP 関数をアクティブにする必要があります。 [match_mode】。] 引数で定義し '2' を表します。 ワイルドカード文字 のマッチングを行います。
で必要な機能は セルC16 はこのようになります。
=XLOOKUP("*"&B16&"*",B5:B13,C5:E13,,2)
を押した後 入力 を使用したときと同様の結果が得られます。 ブイルック の機能を以前から持っています。
続きを読む Excelでワイルドカードを使ったVLOOKUP(3つの方法)
なぜXLOOKUPはVLOOKUPより優れているのか?
- での XLOOKUP 関数では、セルの範囲や配列を返り値として指定しなければなりませんが、これではデータテーブルから値を取得するのが簡単ではありません。 ブイルック 関数では、テーブルから複数の値を抽出する際に、戻り値が存在する配列のカラムのインデックス番号を手動で指定する必要がありますが、大規模なデータセットからインデックス番号を見つけるのはかなり困難な場合があります。
- があります。 XLOOKUP 関数は,ルックアップ値が見つからない場合にカスタマイズされたメッセージを表示するのに便利です。 ブイルック 関数は、カスタマイズされたメッセージ自体を表示することはできません。
- があります。 ブイルック は,テーブルの左端の列の値を探すのに対して XLOOKUP 関数は、与えられたデータテーブルの任意の列で値を探します。
- とともに ブイルック 関数を使用する場合は テーブルアレイ ルックアップ値と戻り値が存在する場所です。 XLOOKUP 関数を使用する場合は、検索配列と戻り値配列を別々に定義する必要があります。
- があります。 XLOOKUP は,与えられたデータセットの下から上へ検索を行うが,一方 ブイルック は、表中の最後の出現箇所からデータを抽出するために、他の関数を必要とします。
- があります。 XLOOKUP 関数では、バイナリ検索を行うことができます。 ブイルック 関数は、そのような基準を思いつきません。
- とともに ブイルック 関数では,近似一致を利用して,次に小さい値だけを返すことができます。 しかし,この関数では XLOOKUP 関数を使えば、テーブルから次に小さい値や次に大きい値のいずれかを返すことができるようになります。
ExcelにおけるXLOOKUPの制限事項
ただ一つ、具体的な欠点があるかもしれません。 XLOOKUP のみで利用できる機能です。 Microsoft Excel 365 . XLOOKUP 関数は古いバージョンと互換性がありません。 しかし ブイルック XLOOKUP関数は、どのバージョンのExcelでも使用できますので、XLOOKUP関数を使用して面白いと感じた場合は、Microsoft Excelの最新バージョンに切り替えた方がよいかもしれません。
結びの言葉
この記事では、2つの機能の比較分析、および上記に例示した関連する例について、今一度、その違いを理解していただければと思います。 XLOOKUP と ブイエルオークアップ のExcel関数について、ご質問やご意見がありましたら、コメント欄でお知らせください。 また、本サイトのExcel関数に関連する他の記事もご覧ください。