excel学习库

excel表格_excel函数公式大全_execl从入门到精通

如何使用lookup函数提取单元格内任意位置的指定文本?

前面我们学习了在单元格中提取任意位置的数字,使用了包含多个函数的组合公式。

下面我们将要提取单元格内任意位置的指定文本,该如何写公式?

如下数据表所示,要提取A列业务地区包含的省份名称,效果如B列所示。

如果数据表中业务地区都是完整表述,都添加了省、市等称谓,则可以使用left+find函数组合进行求解。

但其中有一些单元格并没有添加“”,因此我们可以利用lookup函数来完成提取任务!

作者输入一个公式:

=LOOKUP(9E+307,FIND({"湖南","广东","江西","浙江"},A3,1),{"湖南","广东","江西","浙江"})

这个公式是lookup+find函数的组合,而公式的语法结构属于lookup三参数语法,第2参数查找区域是find函数表达式,而第3参数却是一个数组列表。

本身find函数是提取单元格文本中指定字符的位置,这里的用法有点不一样,但其基本含义不变,仍是返回某个字符串在文本中的位置,只不过此时它属于一种数组写法,由于find函数的查找值使用了大括号“{}”,在公式中代表数组的含义。

所以find函数将在A2单元格中进行多个查找值的查询,也就是依次查询各省名称在单元格中的位置,如果单元格不包含该名称,则显示为错误值,如果包含,则显示为数字,因为find函数返回的结果用数字来表示。

如上图所示,find函数表达式的解析结果,其查找值为“湖南”时,结果为1,即该查找值在单元格中的位置,其他如“广东”等省份在单元格A2中未查询到,结果显示为错误值。

遍历查询所有省份名称,得到一个数组结果。

之后利用lookup函数设置对应的返回列表,即第3参数中的数组列表。

当公式查询“9e307”这个最大的数字时,根据lookup函数的特性,会返回数组列表中最后一个数字,也就是结果1,最后对应返回列中的值,而得到最后的结果。

通过这个方法,可以提取出单元格中指定的文本字符串。

阅读更多:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接