天气

Excel中字符串查找的实现(一对多)


 :如下图所示,A列为含省份信息的地址,要求判断A列是否包含“辽宁”“黑龙江”、“吉林”,如果包括则在B列显示“东北”,否则显示“其他”。如下图所示。

 


 

公式

B2单元格 =IF(COUNT(FIND({"辽宁","黑龙江","吉林"},A2))=0,"其他","东北")

 

分析:

对比上期一对一的公式,差异只有FIND的第一个参数。上期是一个地区“河南”,这次是一个用大括号表示的多个地区{"辽宁","黑龙江","吉林"}。可能有同学不太理解大括号的意思。下面我们就普及一下数组的基本知识。


--------------------------------------------------------

数组是啥?就是一组数,没啥神秘的。在excel里我们如果表示已知内容的一组数,就可以用大括号括起来,用逗号或分号分隔(区别我们可以暂时无视,将来学习数组公式时再了解吧)。

{1,2,3} 表示一组数字 1,2,3

如 {"A","B","Excel精英培训平台"} 表示一组字符

如 {1,"小妖","南京"} 表示一组含数字和文本三个内容。

从上面我们也可以看出,数组中数字不必加双引号,文本要加双引号。

----------------------------------------------------------


理解了数组表示方法,我们接着看公式:


{"辽宁","黑龙江","吉林"} 就表示由三个字符串构成的一个数组。

FIND({"辽宁","黑龙江","吉林"},A2)) 公式里,FIND函数会分别用数组中的每一个地区去A列查找,返回的是3个省份名子在A列的查找结果(就象有3个人面试,每人都会有一个属于自已的面试结果)。


即:{#VALUE!,#VALUE!,#VALUE!} (说明在A2查找三个省份都没有)


COUNT函数可以统计返回的结果内有几个数字,如果有一个是数字,说明是东西地区。但如果象B2公式FIND后结果是三个错误值{#VALUE!,#VALUE!,#VALUE!}),那么COUNT({#VALUE!,#VALUE!,#VALUE!}) 结果为0(0个数字),据此判断,A列不属东北地区。即:


=IF(COUNT(FIND({"辽宁","黑龙江","吉林"},A2))=0,"其他","东北")


:关于数组运算,新手可能还是初次接触,同学们就这样理解。原来是一个数,现在替换成“大括号里的多个数”,每个数都可以分别参与运算,返回的是多个结果。最后可以用SUM或COUNT等求和计数函数对他们进行统计。

标签:excel
分类:Excel学习| 发布:admin| 查看: | 发表时间:2014/12/29
原创文章如转载,请注明:转载自个人资讯网 http://www.zhangxinran.com/
本文链接:http://www.zhangxinran.com/post/1187.html

相关文章

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

Design By zhangxinran.com | Login | Power By zhangxinran.com | 皖公网安备:34010402701072号