函数组合的应用往往把复杂的问题简单化,起到1+1>2的效果,已经介绍几种常用的组合很少,供大家参考,希望能帮助到大家!
组合一:IF+AND/OR+LEFT/MID/RIGHT
当我们需要批量计算某项多重条件限制的补贴发放金额的时候,比如:工龄5年以上或出勤率95%以上者补贴50元;出勤率90%以上同时工作表现“优秀”者另加100元补贴”
例:按下表条件设置,根据多重条件要求测算“补贴”应发数额:
员工 工龄 出勤率 工作表现 补贴条件:
工龄5年以上或出勤率95%以上者补贴50元;
出勤率90%以上同时工作表现“优秀”者可另加100元补贴。
为解决上面的需求,最为简单的办法,可以IF、AND、OR、LEFT四个函数综合运用
组合二:VLOOKUP+MATCH
如下图,根据需要自由查询特定数据
在H2单元格中输入:=VLOOKUP(G2,$A$1:$E$15,MATCH(H1,A1:E1,0),0)
知识点:
match函数的作用是返回在指定方式下与指定数组匹配的数组中元素的相应位置,是一个辅助函数,返回的位置可以提供给其它函数作为引用。
它有三个参数,参数1是查找值,可以是数值、文本或者逻辑值,或者对上述类型的引用;参数2是查找区域,含有要查找值的连续单元格、一个数组、或者是数组的引用;参数3是数字-1、0或者1,指明以何种方式查找。
如果是-1,函数 match查找大于或等于参数1 的最小数值,如果是0,函数 match查找等于 参数1 的第一个数值。如果是,1,函数 match查找小于或等于 参数1的最大数值。
组合三:INDEX+MATCH
用MATCH函数来定位查询值的位置,再用INDEX函数返回指定区域中指定位置的内容,二者结合,可以实现上下左右全方位的查询。
应用实例:
如下图所示,根据姓名查询部门和职务,也就是传说中的逆向查询。
知识点:
INDEX:查找所选区域制定行指定列的值
如下图:=INDEX(A1:C6,4,2)='女”
组合四:MIN+IF
用于计算指定条件的最小值。
如下图所示,要计算指定部门最低薪资
H2单元格可以使用数组公式:
=MIN(IF(D:D=G2,E:E))
先用IF函数判断D列的部门是否等于G2指定的部门,如果条件成立,则返回E列对应的分数,否则返回逻辑值FALSE:
接下来再使用MIN函数计算出其中的最小值。
MIN函数有一个特性,就是可以自动忽略逻辑值,所以只会对数值部分计算,最终得到指定部门的最低分数。
注意,由于执行了多项计算,所以在输入公式时,要按Shift+ctrl+Enter键哦。
组合五:LEN+SUBSTITUTE
如果遇到文本格式的,单元格,根据内容特征如何快速分析单元格中含有几个项目,如下表格中,通过科目之间用顿号隔开,统计通过注会的科数是“顿号”(、)的个数+1
所以:要统计的科目数=单元格总字符数-将“顿号”替换为空格后字符数+1
D2单元格公式为:
=LEN(C2)-LEN(SUBSTITUTE(C2,'、',))+1
先用LEN函数计算出B列单元格的字符长度,然后再用SUBSTITUTE函数将顿号全部替换掉之后,计算替换后的字符长度。
用字符长度减去替换后的字符长度,就是单元格内顿号的个数。
知识点1:
SUBSTITUTE(text,old_text,new_text,[instance_num])
Text是需要替换其中字符的文本,或是含有文本的单元格引用;
Old_text是需要替换的旧文本;
New_text用于替换old_text 的文本;
Instance_num 为一数值,用来指定以new_text 替换第几次出现的old_text;如果指定了instance_num,则只有满足要求的old_text 被替换;如果缺省则将用 new_text 替换 TEXT 中出现的所有 old_text。
知识点2:
LEN:表示返回文本串的字符数。
组合六:TEXT+MID
常用于日期字符串的提取和转换。
如下图所示,要根据B列身份证号码提取出生年月。
C2单元格公式为:
=TEXT(MID(c2,7,8),'0000-00-00')
MID函数用于从字符串的指定位置开始,提取特定数目的字符串。
再使用TEXT函数,将这个字符串变成'0-00-00'的样式,结果为'1975-12-26'。
这个时候,已经有了日期的模样,但是本身还是文本型的,所以再加上两个负号,也就是计算负数的负数,通过这么一折腾,就变成真正的日期序列了。
最新审计培训课程预告
联系客服