目录
SUM
计算单元格或单无格区域相加之和,=SUM(数值1,数值2, ...) 。
- 数值1,数值2, ...为 1 到 255 个需要求和的参数
- 单元格区域不仅可以是一列,还可以是一行、多行多列区域、不连续区域。不连续区域间参数用逗号隔开即可,如SUM(A1:B5,C8,D6)
直接键入到参数表中的数字、逻辑值及数字的文本表达式将被计算
如果参数为数组或引用,只有其中的数字将被计算。数组或引用中的空白单元格、逻辑值、文本或错误值将被忽略,不参与计算
如果参数为错误值或为不能转换成数字的文本,将会导致错误
计算结果为0,最常见的原因:被求和的单元格为文本格式
累加求和,实现根据日期逐行累计:
忽略错误值求和
求和时,数值区有任何一个是错误值时,结果都会返回错误,用SUMIF函数可以忽略错误值,利用条件“>0”来绕开错误值
=SUM($B$2:$B2)→SUMIF(A2:A6,">0")
合并单元格求和
含小计行求和
注意是在括号外面除以2
SUMIF
根据条件求和,=SUMIF(区域,条件,求和区域)
SUMIF=SUM+IF,IF就是如果的意思,也就是说,如果满足条件就对区域中的数据进行求和
这个语法允许只存在两个参数:
- 如,想知道电脑的销售数量,=SUMIF(B2:B8,"电脑",C2:C8),B2:B8为电脑所在的”产品“区域,电脑是条件,求和区域是“数量列”C2:C8
- 如,求数量大于50的和:=SUMIF(C2:C8,">50",C2:C8),缩写如下:=SUMIF(C2:C8,">50")也就是说,当条件区域=求和区域时,求和区域可以不用写
- VLOOKUP函数查找要求很严,需要格式一样才行,2012-1-10为日期格式,如果现在用文本格式就查不到,而用SUMIF却可以,这里也能体现出SUMIF的便利,=VLOOKUP("2012-1-10",A2:C8,3,0)返回错误值N/A。正确写法:=VLOOKUP(--"2012-1-10"",A2:C8,3,0)=SUMIF(A2:A8(日期列),"2012-1-10",C2:C8)
- 例如:求“张小敬”获得的总勋章数量
公式的意思是在姓名列找到“张小敬”,进行勋章求和
- 求员工张三的销售额
- 计算此成绩单中五班同学的总成绩
公式意思是班级列找到五班的成绩并求和
得0或者出错的原因
- 在用于条件判断的单元格区域中,未找到满足条件的数据
- 求和区域中包含了无法计算的内容,如文本格式内容等,也会导致计算错误,这时候只需要将单元格内容转换为可被计算得数字就可以了
对指定条件之外的数据进行求和
- 如:计算除了5班之外,其他班级总成绩
单字段&多条件求和
计算[苹果和香蕉]第一月的总进货数:=SUM(SUMIF(B3:B9,{"苹果","香蕉"},C3:C9))
意思是,使用SUMIF函数分别计算在[水果]区域中,满足“苹果”和“香蕉”条件的一月进货数,然后再使用SUM函数,将SUMIF所得的进货数值相加在一起,也就是算苹果和香蕉第一月的总进货数了
跨列求和
求和区域、条件区域,可以是一列,也可以是多行多列,实现跨列(行)求和
跨列求和要点:“SUMIF(区域,条件,[求和区域])”,中的“区域”选择包含所有条件列(A至D列),“求和区域”是“区域”向右偏移2列(偏移他们之间间隔列数即可,C至F列),这样做稳稳地不会出错
- 求张三销售额(明细数据有多列)
隔列求和
- 计算第一、二、三月的总进货数
「区域」中的C2:H2为标题行区域,需要用Shift+F4添加绝对引用,目的是防止公式引用计算时出现错位的情况发生
「求和区域」中的C3:H3,是需要进行求和的行区域
最后算出某个商店中某个商品的总进货数量,快速下拉/双击填充公式,得出全部商品的总进货数
公式=SUMIF($C$2:$H$2),"进货",C3:H3)
公式含义:计算在C2:H2标题行中满足“进货”的单元格的区域
SUMIFS
单元格区域中,满足多个条件的单元格求和,SUMIFS(求和区域,区域1,条件1,...)
可以设置多个条件叠加
- 求陈二的A产品销售额
参数1:用于实际计算的单元格区域→C2:C7
参数2:用于条件判断的单元格区域→A2:A7
参数3:参数2的条件表达式→E2
参数2和3是成对出现的(A2:A7,E2),还可以再添加参数4和5,参数6和7……来限定多个条件
按日期范围求和
- 求5月销售额
区域1和条件1是成对的,区域2条件2同理
SUMPRODUCT
会将非数值型的数组元素作为0处理
SUMSQ
计算数值平方和,参数的个数可以为 1 到30个,参数可以是数值、数组、名称,或者是对数值单元格的引用
SUMX2PY2
求两个数组中对应数值的平方和之和的情况,=SUMX2PY2 (第一组数值,第二组数值)
- 第一组数值:第一个数组或数值区域
- 第二组数值:第二个数组或数值区域
参数可以是数值、数组、名称、或者是数组的引用
若数组或引用参数包含文本、逻辑值以及空白单元格,则这些值将被忽略;但包含零值的单元格将计算在内
若第一组数值和第二组数值的元素数目不同, 则 SUMX2PY2 将返回错误值 #N/A
SUMXMY2
求两个数组中对应数值之差的平方和,=SUMXMY2 (第一组数值,第二组数值)
- 第一组数值:第一个数组或数值区域
- 第二组数值:第二个数组或数值区域
参数可以是数值、数组、名称、或者是数组的引用
若数组或引用参数包含文本、逻辑值以及空白单元格,则这些值将被忽略;但包含零值的单元格将计算在内
若第一组数值和第二组数值的元素数目不同, 则 SUMXMY2 将返回错误值 #N/A
SUMX2MY2
两数组对应值平方差之和,语法和说明同上
DSUM
03年的低版本可以用,多条件求和,=DSUM(数据源,返回列号,条件区域),数据源跟条件区域必须包含标题
缺陷:如多条件求和时,向下复制公式会出现问题。不能单独汇总,而是累计汇总。(向下复制公式时,会把上面的计算结果一起加到下个公司的计算中,如H2(销售额)就等于本身,H3也就多了H2的销售额,H4多了H2+H3的销售额,只要能将多出来的去掉)
IMSUM
返回以 x+yi 或 x+yj 文本格式表示的两个或多个复数的和
SERIESSUM
计算幂级数之和,SERIESSUM (各级乘幂的底数,首项的幂,各级乘幂的步长,各级乘幂的系数)
- 各级乘幂的底数( X):幂级数的输入值
- 首项的幂( N ):各级乘幂底数 的 首项乘幂
- 各级乘幂的步长( M ):级数中每一项的乘幂 n 的步长增加值。
- 各级乘幂的系数:一系列与 x 各级乘幂相乘的系数,各级乘幂的系数值的数目决定了幂级数的项数。如果各级乘幂的系数中有三个值,则幂级数中将有三项
如果任一参数为非数值型,函数 SERIESSUM 返回错误值 #VALUE!