【Excel成长记】数组

作者: 犀牛日记 | 来源:发表于2016-10-07 22:03 被阅读206次

    数组

    Excel中,数组从来都像一位世外高人,偶尔进入我们视野,但却蒙着一层神秘的面纱,不似函数那样亲切和平易近人。当然,高手往往只会在形势危急、千钧一发之际才会出手,手起刀落、尘埃落定。数组的利害之处就在于,用函数需要分步完成的问题用数组却可以一步到位,大大提升数据处理效率,是解决复杂问题的利器。

    01→

    数组及数组类型

    数组(array),是由数据元素组成的集合,数据元素可以是数值、文本、日期、逻辑值、错误值等。数据元素以行和列的形式组织起来,构成一个数据矩阵,一般用大括号“{}”来表示。“{}”中的数据元素可以是常量,也可以是单元格引用,但不能同时包含常量和单元格引用。例如:“{1,2,A1,D4}”,这样的形式是不合法的。

    当数据元素全部为常量时,我们称之为常量数组,如:“{1,2,3,,4}”,“{2,“TEST”,TRUE,#N/A}”。但是须注意:常量数组中的数值不能包含百分号(%)、货币符号(如$、¥)、逗号和圆括号。当数据元素为一个连续的单元格区域引用时,我们称之为单元格区域数组,例如:在数组公式中“{A1:B5}”是一个5行2列的单元格区域数组。

    另外,有人会发现有时候数组元素之间是用逗号(,)来分隔的,有时候是用分号(;)来分隔的,也有同时使用逗号和分号的。这里说明一下:用逗号分隔表示列元素,用分号分隔表示行元素,如“{1,2,3;4,5,6}”代表一个2行3列的常量数组。

    02→

    数组公式及输入

    所谓数组公式,就是以数组为参数的公式,通过单一公式,执行多个输入并产生多个结果。

    普通的函数公式占用一个单元格,返回一个结果。而数组公式可以占用一个或多个单元格,对一组或多组数据进行多重计算,返回一个或多个结果。

    与普通函数公式不同的是:数组公式是用大括号“{}”括起来的,注意:“{}”不是手工输入的,那样Excel会认为您输入的是文本格式,输入公式后同时按下Ctrl+Shift+Enter即可自动为公式添加“{}”

    当数组公式需要返回多个结果时,则需先选中结果单元格,然后在编辑栏内输入数组公式,再同时按下Ctrl+Shift+Enter键完成输入。

    完成输入后,每个单元格内显示的公式都是一样的,而且只能同时选中这样单元格时,才能删除数组公式。

    03→

    数组应用

    (1)数列求和:用Excel求1+2+3+……+100,一般都会先在Excel中制作一个1到100的等差序列,然后使用求和公式SUM进行计算。而使用数据公式则非常简单,在任意空白单元格中输入:=SUM(ROW(1:100)),然后同时按下Ctrl+Shift+Enter即可得到单元格的返回值:5050,此时,单元格内公式显示为:{=SUM(ROW(1:100))}。

    如果要求1到100之间的奇数或偶数的和,可以使用MOD函数,如下:

    小树良品

    以奇数列求和数组公式为例,ROW(1:100)返回的是一个1到100的行序号数组,IF函数从第1行开始依次计算到第100行,如果第N行(0<=N<=100)行号N被2除的余数为1(即N为奇数),则返回第N行的行号(N),否则,返回0。这样SUM函数内就得到一个由奇数行行号和0组成的数组:{1,0,3,0,……97,0,99,0},将这些数组中的元素进行求和即为1到100之间的奇数的和,返回结果为2500。

    (2)数组求和:将原来需要单一的函数公式合并到一起,一步到位。选取结果返回区域、编辑栏输入函数公式、同时按下Ctrl+Shift+Enter键,方法及步骤基本同上。

    (3)含有非法值得求和:利用数组求和的公式:{=SUM(IF(ISNA(连续的单元格),0,连续的单元格)},这样连续的单元格代表一个常数数组,ISNA判断单元格的数据是否为非法值,如果是非法值则返回结果0,否则返回单元格本身的值,最后同样使用SUM函数对这一数组元素进行求和。

    后续会加强及补充这方面的进阶应用,请多多享用!


    愿你如小树一样,茁壮成长!

    相关文章

      网友评论

      • 种果子:谢谢分享,要是能与实例结合,更具实战价值
        犀牛日记: @自由_落体 好的。努力整理中

      本文标题:【Excel成长记】数组

      本文链接:https://www.haomeiwen.com/subject/irkeyttx.html