您的位置 首页 > 数码极客

excel如何使函数中的变量累加

Hi,

Sum函数你会不会?如果你使用过Excel,你的答案一定是YES。而且,可能你还一脸不屑,sum可是Excel入门级函数,谁不会啊。

的确,说到Excel的sum函数,很多人都用过。初学Excel的你可能不会vlookup,但sum一定会。自从有了sum函数,你再也不用一个一个加数据了。

使用Excel很久的人,对sum函数也是不屑一顾。太简单了,不是?

好吧,今天我们来将sum函数多说几句,或许有些点需要我们重新去认识这个基础函数。

一、sum基础语法

基本语法:SUM(number1,[number2],...)

基本语法说明:从sum函数的参数可以看到,sum可以接多个求和的参数,参数可以是各种类型,只要是可以计算的就行,而且参数可以混合。例如,sum里面既可以有纯数值,也可以有单元格引用范围,等等。

二、sum的用法

用法1:基本求和

例如对基本工资、奖金、总工资进行分别求和:

  • 单元格I3=SUM(D3:D12)
  • 单元格I4=SUM(E3:E12)
  • 单元格I5=SUM(F3:F12)

用法2:多个引用参数求不连续区域的和

例如求各业务员的销售业绩总和

单元格I3=SUM(B3:B6,D3:D6,F3:F6),这里用到了sum的多个参数,多个不连续的引用范围。

看起来,这样用是没有问题,那么还有没有更好的用法。来看看下面的用法:

为什么可以这样用,这是因为这里利用了sum函数会自动忽略文本,它只对数值进行求和。

这种用法更简单。

用法3:用法2的拓展,如何处理类型不匹配问题

来看看为什么下面结算结果是错误的?

为什么,结果不再是5747,而是5003?

还是案例2中的解释,sum会忽略文本值。注意到744这个值,虽然看起来是数字,其实是个文本(带三角形符号)。因此,结果自然就是排除了744这个值外的所有数值之和。

因此,这里有提到另外一个概念,我们在用sum求和时一定要了解求和的对象都是什么数据类型的,有没有错误的数据类型。有的话,我们就需要进行处理。

本例中,我们可以将744用选择性粘贴乘1将其转化为数值。

这里我们介绍另外一种用法:

I3单元格{=SUM(--B3:B6,--D3:D6,--F3:F6)}

如何操作的呢?先输入=SUM(--B3:B6,--D3:D6,--F3:F6),然后三键连发Ctrl+Shift+Enter,完成数组公式的输入。

如果没有三键连发,结果会是1577,即sum三个参数的第一个值求和。

这里为什么用--,所谓负负得正,我们这里是用了两个负号去强制将文本型数字转化为数值。用F9显示计算结果,你会看到整个过程:

这里,我们用到了一个数组的概念。所谓的数组就是不止一个数在计算,类似于矩阵,很多数在参与计算。运输数组公式,我们需要三键连发,即输入公式后Ctrl+Shift+Enter,完成数组公式的输入。

数组是个比较难以理解的东西,后面我们还会遇到,多理解几次就可以了。其实就是一组数反复在参与各种运算。

用法4:累计整数求和

例如:求1+2+…+100

这个看起来似乎也很简单,大不了在1列中输入1到100,然后用sum求和就可以了。类似于这样:

好吧,还有没有更简单的方法。有,来看看下面的极简计算方法:


D3单元格{=SUM(ROW(1:100))}。这里先用row函数构造了1个1到100的序列数,即row(1:100)的结果就是1,2,3,…100,然后外面包一个sum函数进行数组运算,瞬间即得到了我们要的结果。由此可见,在某些时候,数组的功能太强大了。

用法5: sum+indirect+row

案例4的扩展,求和1+2+…n

题目的意思是即给定一个n值,就和1+2+…n

先看动图结果:

这里我们用到了indirect,我们用”1:”&单元格引用的形式,构造了一个动态的引用,n可以是5,也可以是100。Indirect的意思就是将一个文本转化成一个单元格引用。

外层同样是row,sum,然后三键连发运行数组公式。

用法6:sum+if进行条件求和

本例是需要对超过800的业绩进行求和:

当然,你学过sumif,自然就会这样用:=SUMIF(A3:F6,">800")

本例中,我们还是用if+sum数组公式来进行计算:

I3单元格数组公式{=SUM(IF(A3:F6>800,A3:F6,0))},即先用if去判断每个单元格是否大于800,是就是其本身,否就是0,然后外层用sum将矩阵结果求和出来。

当然,和sumif语法比较起来,数组型的公式看起来稍显复杂,而且难以理解。我们这里不做过多的解释,两种用法各有优势。尤其是在需要做复杂矩阵运算的时候,数组公式自有其用处。

用法7:sum求和含错误值的范围

如果求和的范围中含有错误值的话,sum函数是不会忽略错误值的,它会认为将错误值和正常值求和没有意义,所以它会返回错误的值。

那么我们如何进行处置呢?自然第一步就是要将错误值处理。

这里我们不去讲常规的替换操作,我们用iferror函数结合sum函数进行处理。

如何处理呢?

I3公式{=SUM(IFERROR(A3:F6,0))},也是一个数组公式,即先用iferror去判断是否有错误值,有的话赋值0,外层再用sum进行求和处理。

是不是很简单就处理了。

用法8:sum+动态引用计算累计求和

我们有时候需求进行累计求和,看看一般的做法:先排序,然后再计算累计求和。

这种计算方式很简单,第一个累计值等于其自己,第二累计值等于其自己+第一个累计值,公式复制,以此类推。但是,这里需要写两个简单的公式。

而我们可以用sum结合混合引用来进行累计求和。即E2单元格=SUM(D$2:D2)。这里固定了引用的左上角单元格的行号,这样在往行上复制公式的时候,引用的下标在不断的变化,从而使得sum的计算范围,先是只有第一个值,然后有两个值,以此类推。最终实现了sum的累计求和。

三、总结

Sum函数看似非常简单,但当我们深入下去的时候就会发现很多有意思的细节。这些细节决定了我们能否在工作中提升我们的效率。细节决定成败。我们学习一个函数,一定是对其各种细节、各种用法了然于胸。

每当我们遇到合适的应用场景的时候,我们才能信手拈来,否则就是狗急跳墙了。

Sum函数就是这样一种,看似简单,深入下去,才能发现其博大精深。

以上,是今日分享的内容。

我是华哥。每日精进,不负光阴韶华。

赠人玫瑰,手留余香。欢迎评论、点赞、关注,转发。

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“excel如何使函数中的变量累加”边界阅读