XMATCH関数の使い方:Excel関数


スポンサードリンク


作成:2020/2/20,更新更新:2023/8/13

XMATCH関数の構文 XMATCH関数の使用例
XMATCH関数でワイルドカードを使う

XMATCH関数が利用できるExcelの種類(バージョンについて)

XMATCH関数はMATCH関数系の新しい関数で、XLOOKUP関数と同じように新しく追加された関数です。
スピルに関連した関数となっています。

Excel for Microsoft 365 (サブスクリプション版) でXMATCH関数が使えるようになりました。
(Office365は2020/4/22からは Microsoft365となりました)
なお、2021/10/5頃から市販されている Excel2021(永続ライセンス版)でも使用できます。
ちなみに、Excel2016(永続ライセンス版),Excel2019(永続ライセンス版)では使用できませんので、ご注意ください。

Spill(スピル) XMATCH関数
Excel2016 × ×
Excel2019 × ×
Excel2021
Excel for Microsoft365

配列またはセル範囲内の項目の相対的な位置を返す   topへ
 エックス マッチ
=XMATCH(検索値,検索範囲,[一致モード],[検索モード])

XMATCH関数の引数    topへ

引数の [ ] はオプションとなり、指定しなくてもOKです。
XMATCH関数は完全一致で検索する設定が既定になっています。これは従来のMATCH関数と異なるところです。
検索値 参照する値、セル 。
検索範囲 検索する配列または範囲
[一致モード] 一致の種類を指定します
0 完全一致。(これが既定の設定です。) 見つからない場合は、#N/A が返されます。
-1 完全一致。 見つからない場合は、次の小さなアイテムが返されます。
1 完全一致。 見つからない場合は、次の大きなアイテムが返されます。
2 *、?、および 〜 が特別な意味を持つワイルドカードとして使用できます。
[検索モード] 使用する検索モードを指定します。
1 先頭の項目から検索を実行します。 これが既定の設定です。
-1 末尾の項目から逆方向に検索を実行します。
2 昇順で並べ替えられた検索範囲を使用してバイナリ検索を実行します。
昇順に並べ替えられていない場合、無効な結果が返されます。
-2 降順で並べ替えられた検索範囲を使用してバイナリ検索を実行します。
降順に並べ替えられていない場合、無効な結果が返されます。

XMATCH関数の使用例    topへ

C9セルに入力された到着地「名古屋」がC3:E3セルの何番目に有るかを調べます。
E9セルの数式は =XMATCH(C9,C3:E3) としました。
XMATCH関数は一致モードを省略すると、既定で完全一致で検索されます。

従来のMATCH関数では =MATCH(C9,C3:E3,0) と照合の種類で 0 (完全一致) を指定する必要があります。

同様に、E10セルには =XMATCH(C10,B4:B7) としました。

運賃表の行位置と、列位置が求められたので、INDEX関数を使って運賃を求めることができます。
C12セルには =INDEX(C4:E7,E10,E9) としました。
または、=INDEX(C4:E7,XMATCH(C10,B4:B7),XMATCH(C9,C3:E3)) とします。

XLOOKUP関数で求めることもできます。
C12セルには =XLOOKUP(C10,B4:B7,XLOOKUP(C9,C3:E3,C4:E7)) とXLOOKUP関数を2つ使ってみました。
XLOOKUP関数に関しては XLOOKUP関数の使い方 をご覧ください。

何番目に大きいデータかをXMATCH関数で調べる

  1. 県別の人口がリスト化されています。
    E5セルで都道府県名を選択すると、E4セルに何番目に人口が多いかを表示します。
  2. データリストをテーブルに変換しています。テーブル名は 県別人口 としました。
  3. E3セルに =XMATCH(XLOOKUP(E2,県別人口[都道府県],県別人口[人口]),SORT(県別人口[人口],,-1)) と入力しました。
    XLOOKUP関数で E2セルに入力される都道府県名の人口をテーブルから取り出しています。
    XMATCH関数でその人口が SORT関数で降順に並べ替えた人口とどの位置で合致するかを調べています。
  4. 福岡県は9番目となりました。
  5. 後日・・・何番目?ということはRANK関数・・・ということで、XMATCH関数無しで解けてしまいました。
    =RANK(XLOOKUP(E2,県別人口[都道府県],県別人口[人口]),県別人口[人口],0)
  6. 使用したデータをここに残しておきます。検算等してください
    B C D E F G H I
    2 都道府県 人口 福岡県 ↓=SORT(B3:C49,2,-1)
    3 北海道 5,381,733 9 1 東京都 13,515,271
    4 青森県 1,308,265 2 神奈川県 9,126,214
    5 岩手県 1,279,594 3 大阪府 8,839,469
    6 宮城県 2,333,899 4 愛知県 7,483,128
    7 秋田県 1,023,119 5 埼玉県 7,266,534
    8 山形県 1,123,891 6 千葉県 6,222,666
    9 福島県 1,914,039 7 兵庫県 5,534,800
    10 茨城県 2,916,976 8 北海道 5,381,733
    11 栃木県 1,974,255 9 福岡県 5,151,560
    12 群馬県 1,973,115 10 静岡県 3,700,305
    13 埼玉県 7,266,534 11 茨城県 2,916,976
    14 千葉県 6,222,666 12 広島県 2,843,990
    15 東京都 13,515,271 13 京都府 2,610,353
    16 神奈川県 9,126,214 14 宮城県 2,333,899
    17 新潟県 2,304,264 15 新潟県 2,304,264
    18 山梨県 834,930 16 長野県 2,098,804
    19 長野県 2,098,804 17 岐阜県 2,031,903
    20 岐阜県 2,031,903 18 栃木県 1,974,255
    21 静岡県 3,700,305 19 群馬県 1,973,115
    22 愛知県 7,483,128 20 岡山県 1,921,525
    23 三重県 1,815,865 21 福島県 1,914,039
    24 富山県 1,066,328 22 三重県 1,815,865
    25 石川県 1,154,008 23 熊本県 1,786,170
    26 福井県 786,740 24 鹿児島県 1,648,177
    27 滋賀県 1,412,916 25 沖縄県 1,433,566
    28 京都府 2,610,353 26 滋賀県 1,412,916
    29 大阪府 8,839,469 27 山口県 1,404,729
    30 兵庫県 5,534,800 28 愛媛県 1,385,262
    31 奈良県 1,364,316 29 長崎県 1,377,187
    32 和歌山県 963,579 30 奈良県 1,364,316
    33 鳥取県 573,441 31 青森県 1,308,265
    34 島根県 694,352 32 岩手県 1,279,594
    35 岡山県 1,921,525 33 大分県 1,166,338
    36 広島県 2,843,990 34 石川県 1,154,008
    37 山口県 1,404,729 35 山形県 1,123,891
    38 徳島県 755,733 36 宮崎県 1,104,069
    39 香川県 976,263 37 富山県 1,066,328
    40 愛媛県 1,385,262 38 秋田県 1,023,119
    41 高知県 728,276 39 香川県 976,263
    42 福岡県 5,151,560 40 和歌山県 963,579
    43 佐賀県 832,832 41 山梨県 834,930
    44 長崎県 1,377,187 42 佐賀県 832,832
    45 熊本県 1,786,170 43 福井県 786,740
    46 大分県 1,166,338 44 徳島県 755,733
    47 宮崎県 1,104,069 45 高知県 728,276
    48 鹿児島県 1,648,177 46 島根県 694,352
    49 沖縄県 1,433,566 47 鳥取県 573,441

XMATCH関数でワイルドカードを使う    topへ

スポンサードリンク



よねさんのWordとExcelの小部屋 »  エクセル関数一覧表 »  XMATCH関数の使い方

PageViewCounter
Counter
Since2006/2/27