一、SUMIF函数的一个怪异用途
Excel表格中的SUMIF函数在条件求和时经常使用,一般习惯于于根据某一列计算另一列的数字之和。
例1:假设置A列是部门,B列是姓名,C列是工资,可以用下面的公式算出所有财务部员工的工资总和:
=SUM(A1:A100,"财务部",C1:C100)
今天说的不是这个正规用法,而是给大家介绍一种看上去和SUMIF毫无关系的例子。
如下图中,是一些不规则的数据,只关注填充颜色的区域,现在要计算所有A下面数字之和,看上去这个题没有好的思路,其实这个题恰好可以用SUMIF函数轻松解决。
=SUMIF(B2:E7,B12,B3:E8)
分析一下这个公式,第二个参数是条件可以了解,第一个参数和第二个参数有什么关系呢?大家仔细看会发现第三个参数正好是第一个参数的区域向下偏移一个单位。
总结,SUMIF函数并不是只对规则区域求和,还可以对不规则的排列进行条件求和
二、SUMIF函数入门篇
SUMIF作为Excel2003 中一个条件求和函数,在实际工作中发挥着强大的作用,虽然在2007以后被SUMIFS所取代,但它依旧是一个EXCEL函数 的经典。特别是高级用法,依旧适用于后面的版本。
SUM是求和,IF是如果。如果什么。。就求和,其实就是按条件求和。它的结构如下:
SUMIF(条件判断区域,条件,求和区域)
说明:
1 条件判断区域。即然是条件求和,一是要有条件,二是要有判断的区域,SUMIF的第二个参数就是求和的条件,第一个参数呢就是拿条件来这个区域进行对比的区域。第一个参数必须是单元格引用 。
2、条件。按条件求和就得有条件,该条件可以是字符串("ABC",可以用大于等对比符号连接起来的条件表达式(">100"),也可以使用通配符来表示匹配求和("AB*C")。
3、求和区域。求和函数可以没有求和的区域算什么求和函数,该参数为单元格区域引用。如C2:C100。
4、如果求和区域和判断区域是一个区域该怎么办呢?如在C2:C100中计算大于100的数字之和。在这种情况下SUMIF函数由三个参数变换为两个参数。即:
SUMIF(求和区域,条件)
例:如下图所示。要求根据左表中的商家明细表,生成右侧的汇总表,汇总出商家的总进货量和总金额。
公式:
=SUMIF($A$2:$A$8,$F3,C$2:C$8)
公式说明:
$A$2:$A$8是判断区域,拿F3的商家名称在这个区域进行判断是否相同,如果上同,就把C2:C8区域的金额进行求和。
如果只按C列进判断求和呢?比如,计算C列金额大于200的金额之和。公式可以变换为:
SUMIF(C$2:C$8,">200")
三、SUMIF函数技巧篇
在学习了SUMIF函数入门篇后,在常用技巧篇中将学习SUMIF函数常用的一些技巧。
谈到隔列求和,可能就会想到用数组公式,其实只需要用SUMIF函数就可以轻松实现。
例:计算费用表中的计划和实际合计数。
公式:=SUMIF(B$2:G$2,B$2,B3:G3)
提示:SUMIF函数不只是左右示和,还可以上下求和。
四、SUMIF函数进阶篇
SUMIF函数一般情况下只能进行一个条件的求和,但在二般情况下却可以实现对多个条件的求和。什么是二般情况下呢?
SUMIF函数的第二个参数是“求和的条件”,这个参数可以用数组形式。比如
{"A","B"} {">5","<10"}
条件使用数组形式后,SUMIF会分别根据两个条件计算出结果,然后再用SUM计算出结果。
1、对多个商品进行求和
例:如下图所示。要求计算商品名称为手机和冰箱的销售之和。
公式:=SUM(SUMIF(A1:A9,{"手机","冰箱"},C2:C9))
公式说明:
SUMIF(A1:A9,{"手机","冰箱"},C2:C9) 会分别计算出手机的销量(16)和与冰箱的销售量(14)。返回一个数组,即:{16,14},
SUM():对SUMIF返回的两个销售量进行二次求和。
2、按数字区间求和
例:如图一所示。要求计算销售数量大于等5,小于10的销售数字之和。
公式:=SUM(SUMIF(C2:C9,{"<10","<5"})*{1,-1})
公式说明:
SUM(SUMIF(C2:C9,{"<10","<5"}):因为大于等5,小于10的区间和可以用<10的和减去<5的和。所以先分别计算出这两个区间的和{21,10}
SUMIF()*{1,-1} 因为最终的结果是两个数相减,所以这里用数组与数组的计算,把第二个数变成负数{21,-10}。这样在后面用SUM求和时就可以让这两个数相减了。 即SUM( {21,-10})=11