例:如下图所示,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等求和计数函数对他们进行统计。
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。