在阵列部分匹配
中的部分匹配在本文中,我们将学习如何在Excel中提取值数组中的所有部分匹配项。
例如,我们有一个很大的值数组,我们需要提取所有与字符串匹配的值。我们将结合使用IF函数,ISNUMBER函数和SEARCH函数。让我们对这些功能有所了解。
IF函数用于逻辑测试,并根据测试结果返回值。
语法:
= logical_test , [value_if_true] , [value_if_false] ) |
Excel的ISNUMBER函数是一个布尔函数,如果提供的值分别是数字或非数字,则该函数将返回TRUE或FALSE。
语法:
= find_text , within_text , [start_num] ) |
find_text:在inner_text中找到的文本。
inside_text:在inside_text中找到的find_text。
[start_num]:开始的字符位置。默认值为1。现在,我们将使用上述函数构造一个公式。使用公式:
公式:
说明:
= ( string , cell ) ) , cell , “” ) |
-
SEARCH函数在单元格值中查找字符串,如果找到则返回字符串在单元格值中的位置,否则返回#VALUE!错误。
-
ISNUMBER函数检查SEARCH函数是否返回数字。
如果返回值是True,则ISNUMBER函数返回TRUE,而#VALUE返回FALSE!错误。
-
如果ISNUMBER函数返回TRUE,则IF函数返回单元格值;如果ISNUMBER函数返回FALSE,则IF函数返回空单元格。让我们以示例的方式来了解此函数。
在这里,我们有一个值列表和一个字符串值(T恤)。
我们需要在“匹配项”列中找到匹配项列表。使用以下公式提取字符串(T恤)的所有部分匹配项。
使用公式:
说明:
= IF ( ISNUMBER ( SEARCH ( string , A2 ) ), A2 , “” ) |
-
SEARCH函数在单元格值中查找字符串,并返回8(即字符串(T恤)在单元格值(紫色T恤)中的位置)。
-
ISNUMBER函数检查值8是否为数字。 ISNUMBER函数返回TRUE。
-
IF函数返回value_if_True,它是单元格值(紫色T恤)。
此处,单元格值作为单元格参考值给出。使用Ctrl + D快捷键或将Excel中的下拉选项将公式复制到其余单元格中。
如您所见,我们使用公式获得了所有值。现在我们需要匹配项列表。因此,我们将过滤结果。请按照以下步骤过滤结果。
。使用Ctrl + Shift + L *选项应用filter。右键单击“匹配”字段上的箭头键。
。取消勾选(空白)选项,然后单击确定。