目录
Excel XMatch函数
哪个Excel版本具有XMatch?
excel中的基本Xmatch公式
excel xmatch函数 - 要记住的事物
如何在Excel中使用Xmatch -formula示例
确切的匹配与近似匹配
精确匹配
下一个最小的项目
下一个最大的项目
如何将Excel中的部分文本与通配符匹配
xMatch反向搜索以查找最后一场比赛
如何比较Excel中的两列以进行比赛
在Excel中索引XMatch
索引xMatch xMatch以执行2维查找
案例敏感的XMATCH公式
XMATCH与Excel中的比赛
不同的默认行为
近似匹配的不同行为
通配符搜索
搜索模式
XMatch本地处理阵列
xMatch和匹配可用性
练习工作簿下载
首页 专题 excel excel xMatch函数与公式示例

excel xMatch函数与公式示例

Mar 31, 2025 pm 01:06 PM

本教程介绍了新的Excel XMatch函数,并显示了与求解一些常见任务相比它比匹配更好。

在Excel 365中,添加了XMATCH函数以取代匹配功能。但是,在您开始升级现有公式之前,了解新功能的所有优势以及它与旧功能的不同是明智的。

总而言之,XMATCH函数与匹配相同,但更灵活和健壮。它可以在垂直和水平阵列中查找,搜索第一至持久的次数或最后一级,找到精确的,近似和部分匹配,并使用更快的二进制搜索算法。

Excel XMatch函数

Excel中的XMATCH函数返回值在阵列或一系列单元格中的相对位置。

它具有以下语法:

xmatch(lookup_value,lookup_array,[match_mode],[search_mode])

在哪里:

Lookup_value (必需) - 要寻找的值。

Lookup_array (必需) - 搜索的数组或单元格范围。

match_mode (可选) - 指定要使用的匹配类型:

  • 0或省略(默认) - 确切匹配
  • -1-确切的匹配或下一个最小的值
  • 1-确切的匹配或第二大价值
  • 2-通配符匹配(*,?)

search_mode (可选) - 指定搜索方向和算法:

  • 1或省略(默认) - 从第一个到最后一个搜索。
  • -1-最后到第一个以相反顺序搜索。
  • 2-二进制搜索上升。需要Lookup_array以升序排序。
  • -2-二进制搜索下降。需要Lookup_array以降序排序。

二进制搜索是一种更快的算法,可在排序的数组上有效工作。有关更多信息,请参阅搜索模式。

哪个Excel版本具有XMatch?

XMATCH函数仅在Microsoft 365和Excel 2021的Excel中可用。在Excel 2019,Excel 2016及更早版本中,不支持此功能。

excel中的基本Xmatch公式

为了了解该函数的能力,让我们构建一个最简单的XMATCH公式,仅定义了前两个必需的参数,并将可选的参数定义为默认值。

假设您有一个按大小排名的海洋清单(C2:C6),您希望找到特定海洋的排名。要完成它,只需将海洋的名称(例如印第安人)作为查找价值,而名称的整个列表则作为查找阵列:

=XMATCH("Indian", C2:C6)

为了使公式更灵活,请输入某些单元中感兴趣的海洋,例如F1:

=XMATCH(F1, C2:C6)

结果,您将获得一个XMatch公式,可以在垂直阵列中查找。输出是阵列中查找值的相对位置,在我们的情况下,该位置与海洋等级相对应:

excel xMatch函数与公式示例

类似的公式也适用于水平阵列。您需要做的就是调整Lookup_Array参考:

=XMATCH(B5, B1:F1)

excel xMatch函数与公式示例

excel xmatch函数 - 要记住的事物

要有效地在工作表中使用XMatch并防止意外结果,请记住以下3个简单事实:

  • 如果查找阵列中有两个或多个查找值的出现,则如果将search_mode参数设置为1或省略,则返回第一个匹配的位置。将search_mode设置为-1,该功能以相反顺序搜索,并返回最后一场匹配的位置,如本示例所示。
  • 如果找不到查找值,则会发生#N/A错误。
  • XMATCH函数本质上是对病例敏感的,无法区分字母案例。要区分小写和大写字符,请使用此对案例敏感的Xmatch公式。

如何在Excel中使用Xmatch -formula示例

以下示例将帮助您对XMATCH功能及其实际用途有更多了解。

确切的匹配与近似匹配

Xmatch的匹配行为由可选的Match_mode参数控制:

  • 0或省略(默认) - 公式仅搜索精确匹配。如果找不到确切的匹配,则返回#N/A错误。
  • -1-公式首先搜索精确匹配,然后搜索下一个较小的项目。
  • 1-公式首先搜索精确匹配,然后搜索下一个较大的项目。

现在,让我们看看不同的匹配模式如何影响公式的结果。假设您想找出某个区域(例如80,000,000公里2 )位于所有海洋中。

精确匹配

如果将0用于match_mode ,则会获得#n/a错误,因为该公式找不到完全等于查找值的值:

=XMATCH(80000000, C2:C6, 0)

下一个最小的项目

如果将-1用于match_mode ,则公式将返回3,因为最接近查找值的匹配值为70,560,000,并且是查找数组中的第3项目:

=XMATCH(80000000, C2:C6, -1)

下一个最大的项目

如果将1用于match_mode ,则公式将输出2,因为最接近的匹配值大于查找值是85,133,000,这是查找数组中的2项目:

=XMATCH(80000000, C2:C6, -1)

下图显示了所有结果:

excel xMatch函数与公式示例

如何将Excel中的部分文本与通配符匹配

XMATCH函数具有针对通配符的特殊匹配模式: Match_mode参数设置为2。

在通配符匹配模式下,Xmatch公式接受以下通配符字符:

  • 问号(?)匹配任何单个字符。
  • 星号(*)匹配任何字符序列。

请记住,通配符仅处理文本而不是数字。

例如,要查找以“南方”开头的第一个项目的位置,公式为:

=XMATCH("south*", B2:B6, 2)

或者,您可以在某些单元格中键入通配符表达式,例如F1,并为Lookup_value参数提供单元格参考:

=XMATCH(F1, B2:B6, 2)

excel xMatch函数与公式示例

使用大多数Excel功能,您将使用Tilde(〜)将星号(〜*)或问号(〜?)视为字面角色,而不是通配符。使用XMatch,不需要Tilde。如果您不定义通配符匹配模式,则XMatch会假设? *是常规字符。

例如,以下公式将搜索A2:A7的范围,以确切地使用星号字符:

=XMATCH("*", A2:A7)

excel xMatch函数与公式示例

xMatch反向搜索以查找最后一场比赛

如果查找数组中有几次查找值出现,则有时可能需要获得最后一次发生的位置。

搜索方向是控制XMatch命名s​​earch_mode的第4参数。要以相反的顺序搜索,IE在垂直数组中从底部到顶部,在水平数组中从右到左,应将search_mode设置为-1。

在此示例中,我们将返回特定查找值的最后一个记录的位置(请参阅下面的屏幕截图)。为此,设置参数如下:

  • Lookup_value- H1中的目标销售员
  • Lookup_array-销售员名称:C2:C10
  • match_mode是0或省略(确切的匹配)
  • search_mode是-1(最后一开始)

将四个论点汇总在一起,我们得到了这个公式:

=XMATCH(H1, C2:C10, 0, -1)

返回劳拉(Laura)进行的最后一次交易的数量:

excel xMatch函数与公式示例

如何比较Excel中的两列以进行比赛

要比较匹配项的两个列表,您可以将xMatch函数与if and isna一起使用:

if(isna(xmatch( target_listsearch_list ,0)),“ no Match”,“匹配”)

例如,要比较b2:b10中的列表2与a2:a10中的列表1的列表,该公式采用以下表格:

=IF(ISNA(XMATCH(B2:B10, A2:A9)), "", "Match in List 1")

在此示例中,我们仅识别匹配,因此if函数的是一个空字符串(“”)。

输入上面的公式在最上方的单元格(在我们的情况下C2)中,按Enter ,然后将“溢出”自动“溢出”(称为溢出范围):

excel xMatch函数与公式示例

该公式如何工作

在公式的核心中,Xmatch函数从列表1中的列表2搜索一个值。如果找到一个值,则返回其相对位置,否则#n/a错误。在我们的情况下,xMatch的结果是以下数组:

{#N/A;#N/A;2;#N/A;4;#N/A;#N/A;8;#N/A}

此数组被“馈送”到ISNA函数,以检查#N/A错误。对于每个#N/A错误,ISNA返回true;对于任何其他值 - false。结果,它产生以下逻辑值数组,其中True的代表不匹配,而False表示匹配:

{TRUE;TRUE;FALSE;TRUE;FALSE;TRUE;TRUE;FALSE;TRUE}

上面的数组用于IF函数的逻辑测试。根据您如何配置最后两个参数,公式将输出相应的文本。在我们的情况下,这是一个非匹配( value_if_true )的空字符串(“”),匹配项( value_if_false )的“列表1中的匹配”。

笔记。该公式仅在支持动态阵列的Excel 365和Excel 2021中起作用。如果您使用Excel 2019,Excel 2016或更早版本,请查看其他解决方案:如何比较Excel中的两列。

在Excel中索引XMatch

Xmatch可以与索引函数结合使用,以从与查找值关联的另一列中检索一个值,就像索引匹配公式一样。通用方法如下:

索引( return_array ,xmatch( lookup_valuelookup_array

逻辑非常简单,易于遵循:

XMATCH函数计算查找阵列中查找值的相对位置,并将其传递到索引的row_num参数。基于行号,索引函数从您指定的任何列返回一个值。

例如,要查找E1中的海洋区域,您可以使用此公式:

=INDEX(B2:B6, XMATCH(E1, A2:A6))

excel xMatch函数与公式示例

索引xMatch xMatch以执行2维查找

要同时查找列和行,请将索引与两个XMatch函数一起使用。第一个Xmatch将获得行号,第二个将检索列号:

索引( data ,xmatch( lookup_value垂直_ lookup_array ),xmatch(查找值水平_ lookup_array ))

该公式类似于索引匹配项,除非您可以省略match_mode参数,因为它默认为精确匹配。

例如,要在特定月份(G2)中检索给定项目(G1)的销售号码,该公式为:

=INDEX(B2:D8, XMATCH(G1, A2:A8), XMATCH(G2, B1:D1))

其中b2:d8是排除行和列标题的数据单元,A2:A8是项目列表,B1:D1是月份的名称。

excel xMatch函数与公式示例

案例敏感的XMATCH公式

如前所述,Excel Xmatch函数是通过设计对大小写的。为了区分文本案例,请将XMatch与确切函数结合使用:

匹配(true,cressect( lookup_arraylookup_value ))

相反顺序从最后到第一个搜索:

匹配(true,exkeck( lookup_arraylookup_value ),0,-1)

下面的示例显示了此通用公式。假设您在b2:b11中有一个对病例敏感的产品ID的列表。您正在寻找在E1中找到该项目的相对位置。 E2中的案例敏感公式与此一样简单:

=XMATCH(TRUE, EXACT(B2:B11, E1))

excel xMatch函数与公式示例

该公式如何工作:

确切的功能将查找值与查找数组中的每个项目进行比较。如果比较的值完全相等(包括字符案例),则该函数将返回true,否则为false。这个逻辑值数组(其中true代表精确匹配)用于XMatch的Lookup_array参数。并且由于查找值是正确的,因此XMATCH函数返回第一个找到的精确匹配或最后一个精确匹配的位置,具体取决于您如何配置search_mode参数。

XMATCH与Excel中的比赛

Xmatch被设计为更强大,更通用的匹配替代品,因此这两个功能具有很多共同点。但是,存在基本差异。

不同的默认行为

匹配函数默认为确切匹配或下一个最小的项目( arte_type设置为1或省略)。

XMATCH函数默认为精确匹配( Match_mode设置为0或省略)。

近似匹配的不同行为

match_mode / match_type参数设置为1:

  • 匹配搜索确切匹配或下一个最小的匹配。要求查找阵列应按升序排序。
  • XMatch搜索确切的匹配或下一大匹配。不需要任何分类。

match_mode / match_type参数设置为-1:

  • 匹配搜索确切的匹配或下一大匹配。需要按降序对查找阵列进行排序。
  • XMatch搜索确切的匹配或下一个最小的匹配。不需要任何分类。

通配符搜索

要查找与XMatch的部分匹配,您需要将Match_mode参数设置为2。

匹配功能没有特殊的通配符匹配模式选项。在大多数情况下,您将其配置为精确匹配( Match_type设置为0),这也适用于通配符搜索。

搜索模式

与新的Xlookup函数一样,XMatch具有特殊的search_mode参数,该参数允许您定义搜索方向

  • 1或省略(默认) - 搜索首先搜索。
  • -1-反向搜索最后一级。

并选择二进制搜索算法,该算法在分类数据上非常快速有效。

  • 2-对数据排序上升的二进制搜索。
  • -2-二进制搜索数据排序的下降。

二进制搜索,也称为半间隔搜索对数搜索,是一种特殊的算法,通过将其与数组的中间元素进行比较,可以在数组中找到查找值的位置。二进制搜索比常规搜索要快得多,但仅在排序列表上正确工作。在未分类的数据上,它可能会返回错误的结果,这看起来可能很正常。

匹配的语法根本不能提供搜索模式参数。

XMatch本地处理阵列

与其前身不同,XMATCH函数是为Dynamic Excel设计的,并在本地处理阵列,而无需按CTRL Shift Enter 。这使得公式更容易构建和编辑,尤其是在一起使用一些不同的功能时。只需比较以下解决方案:

  • 案例敏感公式:xmatch |匹配
  • 比较匹配项的两个列或列表:XMatch |匹配

xMatch和匹配可用性

Xmatch是一个新功能,仅在Microsoft 365和Excel 2021中可在Excel中使用。

匹配功能可在Excel 2007的Excel 365版本中获得。

这就是在Excel中使用XMATCH函数的方法。我感谢您阅读,并希望下周在我们的博客上见到您!

练习工作簿下载

excel xmatch公式示例(.xlsx文件)

以上是excel xMatch函数与公式示例的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Excel公式在列或行中找到前3、5、10个值 Excel公式在列或行中找到前3、5、10个值 Apr 01, 2025 am 05:09 AM

本教程演示了如何在数据集中有效地定位顶部N值并使用Excel公式检索关联的数据。 无论您需要最高,最低还是符合特定标准的人,本指南都提供解决方案。 Findi

如何使用示例使用Flash Fill ofecl 如何使用示例使用Flash Fill ofecl Apr 05, 2025 am 09:15 AM

本教程为Excel的Flash Fill功能提供了综合指南,这是一种可自动化数据输入任务的强大工具。 它涵盖了从定义和位置到高级用法和故障排除的各个方面。 了解Excel的FLA

如何将日历添加到Outlook:共享,Internet日历,ICAL文件 如何将日历添加到Outlook:共享,Internet日历,ICAL文件 Apr 03, 2025 am 09:06 AM

本文介绍了如何在Outlook Desktop应用程序中访问和利用共享日历,包括导入Icalendar文件。 以前,我们介绍了分享您的Outlook日历。 现在,让我们探索如何查看与之共享的日历

将下拉列表添加到Outlook电子邮件模板 将下拉列表添加到Outlook电子邮件模板 Apr 01, 2025 am 05:13 AM

本教程向您展示了如何将下拉列表添加到Outlook电子邮件模板中,包括多个选择和数据库总体。 虽然Outlook并未直接支持下拉列表,但本指南提供了创造性的解决方法。 电子邮件模板SAV

Excel中的FV功能以计算未来值 Excel中的FV功能以计算未来值 Apr 01, 2025 am 04:57 AM

本教程解释了如何使用Excel的FV功能来确定投资的未来价值,涵盖了定期付款和一次性付款。 有效的财务计划取决于了解投资增长,本指南

Excel中的中位公式 - 实际示例 Excel中的中位公式 - 实际示例 Apr 11, 2025 pm 12:08 PM

本教程解释了如何使用中位功能计算Excel中数值数据中位数。 中位数是中心趋势的关键度量

如何在Excel单元中删除 /拆分文本和数字 如何在Excel单元中删除 /拆分文本和数字 Apr 01, 2025 am 05:07 AM

本教程展示了使用内置功能和自定义VBA函数在Excel单元格中分离文本和数字的几种方法。 您将在删除文本时学习如何提取数字,隔离文本时丢弃数字

如何将联系人导入Outlook(从CSV和PST文件) 如何将联系人导入Outlook(从CSV和PST文件) Apr 02, 2025 am 09:09 AM

本教程演示了将联系人导入Outlook的两种方法:使用CSV和PST文件,还涵盖了将联系人转移到Outlook Online。 无论您是从外部来源合并数据,都从另一个电子邮件pro迁移

See all articles