微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

字符串中的 Excel 字符串查找

如何解决字符串中的 Excel 字符串查找

enter image description here

我有“收货地点”列表,我需要查找另一列,其中包含一组列表,其中包含正确大小写/正确名称中的城市名称

我尝试了下面的公式,但我没有找到任何运气

=(VLOOKUP(LOOKUP(LOOKUP(2^15,SEARCH($I$1:$I$7,A2),$I$1:$I$7),$I$1:$I$7,1,0))>

当单元格中的第一个单词与另一个单词匹配时,它会给我结果,但是当“接收地点”在第一个单词之后有不同的单词时,它会抛出错误

例如“BRADFORD GB”不会从城市列表中获得“Bradford,WYK”,如上图所示。

解决方法

您可以使用此公式捕获单元格的第一个单词(如果只包含一个单词,则为整个单词):

=IFERROR(LEFT(A2,FIND(" ",A2)-1),A2)

如果您当前的公式失败,您可以使用它来执行 VLOOKUP:

=IFERROR([your-current-formula],VLOOKUP(IFERROR(LEFT(A2,A2),1,1)
,

我遇到了在逗号和空格之前查找字符串的解决方案,如果第一个单词匹配,它将检查逗号之后的单词 (+3)。现在可以预期结果。

我使用的公式:

=IFERROR(VLOOKUP(LOOKUP(2^15,SEARCH((LEFT(A2,(FIND(",",A2,1)+3))),$I$1:$I$8,1),$I$1:$I$8),0),(VLOOKUP(LOOKUP(2^15,(FIND(" ",1)-1))),0))) 

解决方案

enter image description here

,

假设你有office excel 365,你可以使用xlookup和Find的组合来解决如下

=XLOOKUP("*"&IFERROR(LEFT(A2,FIND("@",SUBSTITUTE(A2,"@",2))-1),LEFT(A2,A2)-1))&"*",$D$2:$D$7,"Not found",2)

结果如下

Result

说明

  1. 首先我们需要提取字符直到“,”的第二次迭代

    LEFT(A2,2))-1)

  2. 由于并非所有字符串的名称都带有 "," 示例:BRADFORD GB,因此上面的公式将抛出错误以提示我们使用 IFERROR 函数。所以,如果上面的公式抛出错误,我们将只提取直到第一个空格实例的字符。

    IFERROR(LEFT(A2,LEFT(A2,A2)-1))

  3. 现在我们只需要在城市列表中查找名称。但是,由于收货地点和城市列表并不完全相同,我们将在顶部的整体公式中使用通配符“*”。

=XLOOKUP("*"&IFERROR(LEFT(A2,2)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。