Excel2016でXLOOKUP関数を使用する方法

Excel2016でXLOOKUP関数を使用する方法

WindowsおよびMacのOffice365サブスクライバー向けExcel2016は、新しいXLOOKUP関数をサポートするようになりました。これは、非常に人気のある(ただし悪意のある)垂直ルックアップ関数であるVLOOKUP(XLOOKUPのXが何であるかわからない)のかなり単純で用途の広い代替として宣伝されています。の略です; eXtensive、おそらく?)。

VLOOKUP(SUMおよびAVERAGEの直後に3番目に使用される関数と見なされる)にまだ慣れていない場合、この関数は、指定されたルックアップテーブルの左端の列を上から下に行ごとに垂直に検索し、ルックアップするものと一致するか、それを超えるオフセット番号で指定されたルックアップ列。ワークシートのデータテーブルの長いリストまたは列で特定のアイテムを見つけるのに非常に便利ですが、VLOOKUP関数には、XLOOKUPのように、この新しいルックアップ関数では共有されないいくつかの制限があります。

  • デフォルトでは、ルックアップ範囲内のルックアップ値に完全に一致するものが検索されます
  • テーブル内で垂直(行)と水平(列)の両方を検索できるため、列で水平に検索するときにHLOOKUP関数を使用する必要がなくなります。
  • 関数が機能するために、ルックアップテーブルのルックアップ範囲がリターン範囲として指定された列の左側の列に配置される必要がないように、左または右に検索できます。
  • 完全一致のデフォルトを使用すると、ルックアップ範囲の値が特定の順序で並べ替えられていない場合でも機能します
  • オプションの検索モード引数を使用して、ルックアップ配列範囲の一番下の行から一番上の行まで検索できます

XLOOKUP関数には、次の構文を使用して、5つの可能な引数があり、最初の3つは必須で、最後の2つはオプションです。

XLOOKUP(lookup_valuelookup_arrayreturn_array、[ match_mode ]、[ search_mode ])

必須のlookup_value引数は、検索する値またはアイテムを指定します。必須のlook_up配列引数は、このルックアップ値を検索するセルの範囲を指定し、return_array引数は、Excelが完全に一致するものを見つけたときに返される値を含むセルの範囲を指定します。

* XLOOKUP関数でlookup_array引数とreturn_array引数を指定するときは、両方の範囲が同じ長さである必要があることに注意してください。そうでない場合、Excelは#VALUEを返します。数式にエラーがあります。これが、これらの引数を指摘したりセル参照を入力したりするのではなく、指定されたデータテーブルの範囲名または列名を使用する理由です

オプションのmatch_mode引数には、次の4つの値のいずれかを含めることができます。

  • 完全一致の場合は0(デフォルト、match_mode引数が指定されていない場合と同じ)
  • 完全一致または次に小さい値の場合は-1
  • 1完全一致または次のより大きい値について
  • lookup_value引数のセル参照に結合されたワイルドカード文字を使用した部分一致の場合は2

オプションのsearch_mode引数には、次の4つの値のいずれかを含めることができます。

  • 1を最初から最後まで、つまり上から下に検索します(デフォルト、search_mode引数が指定されていない場合と同じ)
  • -1で最後から最初、つまり下から上に検索します
  • 2昇順でバイナリ検索のための
  • -降順の二分探索の場合は2

新しいXLOOKUP関数の能力と多様性を理解する最良の方法は、Excelワークシートで実際の動作を確認することです。次の図には、国ごとに整理された単純な2019年の売上データテーブルを含むワークシートがあります。XLOOKUPを使用して、ワークシートのセルD4に入力した国に基づいて、セルE4のこのテーブルから総売上高を返すには、次の手順を実行します。

ワークシートのセルE4にセルカーソルを置きます

[数式]タブの[ルックアップと参照]オプションをクリックしてから、ドロップダウンメニューの下部にある[XLOOKUP]をクリックして、[関数の引数]ダイアログボックスを開きます。

ワークシートのセルD4をクリックして、そのセル参照をLookup_value引数テキストボックスに入力します。

Tabキーを押してLookup_array引数テキストボックスを選択し、セルA4をクリックし、Shiftキーを押しながらCtrlキーを押しながら下矢印キーを押して、検索範囲としてA4:A8を選択します(範囲A3:B8はExcelデータテーブルとして定義されているため、 Table1 [Country]は、A4:A8)の範囲の代わりにテキストボックスに表示されます。

Tabキーを押してReturn_array引数テキストボックスを選択し、セルB4をクリックし、Shiftキーを押しながらCtrlキーを押しながら下矢印キーを押しながら、検索結果に基づいて返される値を含む範囲としてB4:B8を選択します(次のように表示されます)。表1 [テキストボックスの[総売上高]])。

[OK]をクリックして、セルE4にXLOOKUP数式を入力します。

Excel2016でXLOOKUP関数を使用する方法

セルE4にXLOOKUPを使用して、セルD4に入力された国に基づいて売上を返す数式を作成します。

ExcelはワークシートのセルE4にXLOOKUP数式を入力し、結果として4900を返します。これは、コスタリカが現在ルックアップセルD4に入力されており、2019年の売上表に示されているように、これは確かにこの国の総売上です。

XLOOKUPは右から左、および左から右で機能するため、この関数を使用して、特定の売上高に基づいてこの売上テーブルから国を返すこともできます。次の図は、これを行う方法を示しています。今回は、セルD4にXLOOKUP数式を作成し、セルE4に入力された値(この場合は11,000)をlookup_value引数として指定します。

さらに、match_mode引数として-1を入力して、関数の完全一致のデフォルトをオーバーライドします。これにより、Excelは、ルックアップセルE4に入力された売上値と完全に一致する国、または次に低い総売上を持つ国を返します(メキシコとこのテーブルには総売上高が11,000ドルの国がないため、この場合は10,000ドルです。この数式にmatch_mode引数を指定しないと、この売上テーブルには$ 11,000と完全に一致するものがないため、Excelは結果として#NAを返します。

Excel2016でXLOOKUP関数を使用する方法

セルD4にXLOOKUPを使用して数式を作成し、セルE4に入力された売上に基づいて国を返します。

XLOOKUP関数は、行ごとに垂直方向に検索するのと同じように、列ごとに水平方向に検索するのと同じくらい快適なので、双方向ルックアップを実行する数式を作成できます(INDEX関数とMATCH関数を組み合わせた数式を作成する必要がなくなります。過去に)。次の図は、4月から12月までの部品番号AB-100からAB-103の2019年の生産スケジュール表を含み、これがどのように行われるかを示しています。

Excel2016でXLOOKUP関数を使用する方法

ネストされたXLOOKUP関数を使用して式を作成し、特定の月に部品に対して生産されたユニット数を返します。

セルB12で、次の数式を作成しました。

= XLOOKUP(part_lookup、$ A $ 3:$ A $ 6、XLOOKUP(date_lookup、$ B $ 2:$ J $ 2、$ B $ 3:$ J $ 6))

この数式は、生産テーブルのセル範囲$ A $ 3:$ A $ 6のpart_lookupという名前のセル(この場合はセルB10)で作成されたパーツエントリと完全に一致するものを行で垂直方向に検索するXLOOKUP関数を定義することから始まります。 。ただし、この元のLOOKUP関数のreturn_array引数は、それ自体が2番目のXLOOKUP関数であることに注意してください。

この2番目のネストされたXLOOKUP関数は、セル範囲$ B $ 2:$ J $ 2を列ごとに水平方向に検索して、date_lookupという名前のセル(この場合はセルB11)に作成された日付エントリと完全に一致するものを探します。この2番目のネストされたXLOOKUP関数のreturn_array引数は、テーブル内のすべての実動値のセル範囲である$ B $ 3:$ J $ 6です。

この数式が機能する方法は、Excelが最初に水平検索を実行して2番目のネストされたXLOOKUP関数の結果を計算し、この場合、Jun-19列のセル範囲D3:D6の配列を返します(値は次のとおりです。その結果として438、153、306、および779)。この結果は、セルB11(part_lookupという名前)で作成された部品番号エントリと完全に一致する行による垂直検索を実行する元のXLOOKUP関数のreturn_array引数になります。この例では、このpart_lookupセルにAB-102が含まれているため、数式は2番目の次のXLOOKUP関数の結果からJun-19の生成値306のみを返します。

あります!XLOOKUPを最初に見てみましょう。これは、VLOOKUP関数とHLOOKUP関数によって実行される単一値ルックアップだけでなく、 INDEX関数とMATCH関数も同様です。

*残念ながら、XLOOKUP関数は、VLOOKUP関数とHLOOKUP関数のみをサポートする以前のバージョンのMicrosoft Excelとの下位互換性がないか、Excel2019やExcelOnlineなどのルックアップ関数の1つとしてまだ含まれていない現在のバージョンと互換性がありませんつまり、XLOOKUP数式を含むブックを、この新しいルックアップ関数を含まないバージョンのExcelを使用している同僚またはクライアントと共有すると、これらの数式はすべて#NAME?を返します。ワークシートを開いたときのエラー値。

構文

XLOOKUP 関数は範囲または配列を検索し、最初に一致した項目に対応する項目を返します。一致するものが存在しない場合、XLOOKUP は最も近い(おおよその)一致を返します。 

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode]) 

口論

説明

参照値

必須*

検索する値

*省略した場合、XLOOKUP は lookup_array で見つかった空白セルを返します。   

ルックアップ配列

必須

検索する配列または範囲

戻り配列

必須

返す配列または範囲

[見つからない場合]

オプション

有効な一致が見つからない場合は、指定した [if_not_found] テキストを返します。

有効な一致が見つからず、[if_not_found] が欠落している場合は、 #N/A が返されます。

[マッチモード]

オプション

一致タイプを指定します。

0 - 完全一致。何も見つからなかった場合は、#N/A を返します。これがデフォルトです。

-1 - 完全一致。何も見つからなかった場合は、次に小さい項目を返します。

1 - 完全一致。何も見つからなかった場合は、次に大きい項目を返します。

2 - *、?、~ が特別な意味を持つワイルドカード一致。

[検索モード]

オプション

使用する検索モードを指定します。

1 - 最初の項目から検索を実行します。これがデフォルトです。

-1 - 最後の項目から逆方向検索を実行します。

2 - 昇順でソートされている lookup_array に依存するバイナリ検索を実行します。ソートされていない場合、無効な結果が返されます。

-2 - 降順で並べ替えられる lookup_array に依存する二分検索を実行します。ソートされていない場合、無効な結果が返されます。

例 1    XLOOKUP を使用して範囲内の国名を検索し、その電話の国コードを返します。これには、 lookup_value (セル F2)、 lookup_array (範囲 B2: B11)、 return_array (範囲 D2:D11) 引数。 XLOOKUP はデフォルトで完全一致を生成するため、 match_mode 引数は含まれません。

従業員 ID に基づいて従業員名と部門を返すために使用される XLOOKUP 関数の例。式は =XLOOKUP(B2,B5:B14,C5:C14) です。

注: XLOOKUP は検索配列と戻り配列を使用しますが、VLOOKUP は単一のテーブル配列とそれに続く列インデックス番号を使用します。この場合の同等の VLOOKUP 式は次のようになります。 =VLOOKUP(F2,B2:D11,3,FALSE)

———————————————————————————

例 2    従業員 ID 番号に基づいて従業員情報を検索します。 VLOOKUP とは異なり、XLOOKUP は複数の項目を含む配列を返すことができるため、1 つの数式でセル C5:D14 から従業員名と部門の両方を返すことができます。

従業員 ID に基づいて従業員名と部門を返すために使用される XLOOKUP 関数の例。式は次のとおりです: =XLOOKUP(B2,B5:B14,C5:D14,0,1)

———————————————————————————

例 3  if_not_found 引数を前の例に追加します。

if_not_found 引数を使用して従業員 ID に基づいて従業員名と部門を返すために使用される XLOOKUP 関数の例。式は =XLOOKUP(B2,B5:B14,C5:D14,0,1,"従業員が見つかりません") です。

———————————————————————————

例 4    列 C でセル E2 に入力された個人所得を検索し、列 B で一致する税率を見つけます。 if_not_found 引数を使用して、何も見つからなかった場合に 0(ゼロ)を返します。 match_mode 引数は 1 に設定されています。これは、関数が完全に一致するものを探し、見つからない場合は返されることを意味します。次に大きなアイテム。最後に、 search_mode 引数は 1 に設定されます。これは関数を意味します。最初の項目から最後の項目まで検索します。

最大所得に基づいて税率を返すために使用される XLOOKUP 関数のイメージ。これは近似一致です。式は次のとおりです: =XLOOKUP(E2,C2:C7,B2:B7,1,1)

注: XARRAY の lookup_array 列は、  の右側にあります。 >return_array 列ですが、VLOOKUP は左から右へのみ検索できます。

———————————————————————————

例 5    ネストされた XLOOKUP 関数を使用して、垂直方向と水平方向の両方の一致を実行します。まず列 B の 総利益 を探し、次に 第1四半期 を探します。テーブルの一番上の行 (C5:F5 の範囲) に入力し、最後に 2 つの交点の値を返します。これは、INDEX 関数と MATCH 関数を一緒に使用するのと似ています。

ヒント: XLOOKUP を使用して HLOOKUP 関数を置き換えることもできます。

2 つの XLOOKUP をネストしてテーブルから水平方向のデータを返すために使用される XLOOKUP 関数のイメージ。式は次のとおりです: =XLOOKUP(D2,$B6:$B17,XLOOKUP($C3,$C5:$G5,$C6:$G17))

注: セル D3:F3 の数式は次のとおりです: =XLOOKUP(D2,$B6:$B17,XLOOKUP($C3, $C5:$G5,$C6:$G17)).

———————————————————————————

例 6    SUM 関数と 2 つのネストされた XLOOKUP 関数を使用して、2 つの範囲間のすべての値を合計します。この場合、ブドウ、バナナの値を合計し、その 2 つの中間である梨も含めます。

XLOOKUP と SUM を使用して、2 つの選択範囲の間にある値の範囲を合計します。

セル E3 の数式は次のとおりです: =SUM(XLOOKUP(B3,B6:B10,E6:E10):XLOOKUP(C3,B6:B10,E6:E10))

どのように機能するのでしょうか? XLOOKUP は範囲を返すため、計算すると、数式は =SUM($E$7:$E$9) のようになります。これがどのように機能するかを自分で確認するには、これと同様の XLOOKUP 数式が含まれるセルを選択し、 数式 > を選択します。 数式の監査 >数式を評価し、 評価 を選択して計算を進めます。


スマートシート 9.1.1

スマートシート 9.1.1

Smartsheet は、プロジェクトの管理、ワークフローの構築、チームとの共同作業を可能にする動的な作業プラットフォームです。

共有ポイント

共有ポイント

SharePoint は、さまざまなワークフロー アプリケーション、「リスト」データベース、その他の Web コンポーネント、およびビジネス グループの共同作業を制御するためのセキュリティ機能を使用する Web ベースのコラボレーション システムです。

パーペチュアルカレンダー 1.0.38/1.0.36

パーペチュアルカレンダー 1.0.38/1.0.36

Van Nien Calendar は、携帯電話でカレンダーを表示するアプリケーションです。携帯電話で太陰太陽の日付をすぐに確認できるため、重要な仕事を計画することができます。

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook は、Microsoft Corporation によって開発されたビジネスおよび生産性アプリケーションです。

クリックアップ

クリックアップ

ClickUp は、あらゆるビジネスにとって最も評価の高い生産性プラットフォームの 1 つです。Google、Booking.com、サンディエゴ・パドレス、Uber などの大企業はすべて、職場の生産性を向上させるために ClickUp を使用しています。

PDF-XChange ビューア 2.5.322.10

PDF-XChange ビューア 2.5.322.10

PDF は、テキスト ドキュメントの読み取り、作成、送信に一般的に使用される形式になっています。その結果、この種のドキュメントに使用されるプログラムの数も増加しました。PDF-XChange Viewer は、ますます多くの PDF ビューアの 1 つです。

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice は、特に Excel、PowerPoint、Word など、Microsoft 365 に匹敵する Office アプリケーションの完全なスイートを提供します。プロジェクトをより効率的に管理できるようになり、いくつかのファイル形式がサポートされます。

iTaxviewer 1.8.7をダウンロード

iTaxviewer 1.8.7をダウンロード

iTaxViewer ソフトウェアは、現在最も人気のある XML ファイル読み取りソフトウェアです。このソフトウェアは、国税総局のXML形式の電子申告書を閲覧するためのアプリケーションです。

Nitro PDF リーダー

Nitro PDF リーダー

Nitro PDF Reader は、ほとんどの人が PDF ドキュメントを使用して毎日実行する基本的なタスクをすべてカバーする便利な PDF エディターです。

Foxit リーダー 12

Foxit リーダー 12

Foxit Reader は主に PDF リーダーですが、PDF ファイルの作成、署名、編集、注釈の追加も可能です。オペレーティング システム上で動作し、Microsoft Office パッケージのさまざまなプログラム用のプラグインがあります。