加油复习者们 发表于 2019-7-26 17:02:18

数组公式


先从一个简单的计算公式说起:
=A1*B1
它的结果为20,返回结果只有一个数。

而如果让多个数与B1相乘,会是什么结果呢?
=A1:A5*B1

结果是分别返回一个相乘的结果值。即返回的是一组值:20;40;50;60;30,这组数储存在电脑内存中。由于单元格无法同时显示多个结果,所以显示为错误值。


如果让一列数与另一列数相乘是什么结果呢?
=A1:A5*B1:B5
结果是相对应的行一对一相乘,几行数会返回几个结果:20;8;35;48;27


说了这么多,我们只需要了解:excel中的运算后返回值的个数有两种:1个数 和 1组数。
那么,如果一个公式中含有返回一组数的表达式时,就需要用数组运算方法。即在公式后按ctrl+shift+enter三键自动添加大括号{}。当然也有例外,象lookup、sumproduct函数就可以直接执行数组运算,而不需要添加大括号。

说到这里有些人还是有些迷惑,这个倒底有什么用,兰色下面举两个小例子。
【例1】如下图所示表销售统计表中,要求根据销售数量,计算所有人员提成之和(提成 10元/个)

如果用一般的方法,公式应该为:
=2*10+4*10+5*10+6*10+3*10=200
用数组方法:
{=SUM(B2:B6*10)}
套用开始的理论,因为B2:B6*10计算后返回多个结果,所以公式要添加大括号。

【例2】计划B2:B2区域总共有多少字数。

公式:{=SUM(LEN(B2:B4))}
len(B2:B4)要返回每个单元格的字符数,返回的是一组数,所以该公式也要添加大括号。
页: [1]
查看完整版本: 数组公式