第3章
中级函数:实现批量数据处理
3.1 数组
1. 数组定义
数组就是一个集合,数组中可以有一个或者多个数值。当然,单元格区域引用也可以被看成是数组引用。
2. 普通公式与数组公式的区别
普通公式返回一个值并且占用一个单元格;而数组公式返回一个结果或者多个结果,占用一个单元格或者多个单元格。
普通公式的输入一般不需要使用快捷键(Ctrl+Shift+Enter),数组公式则需要。当然,输入普通公式后按了这个快捷键,普通公式也就变成了数组公式。
3. 如何输入数组公式
输入公式之后,如果返回一个结果,就选择一个单元格,如果返回多个结果,就选择多个单元格,然后把鼠标光标定位在编辑栏中,按快捷键Ctrl+Shift+Enter。
4. 数组的分类
(1)常量数组
有一对大括号,如{1,0};{1;0}; {1,1;1,1}。
(2)区域数组
如果是单元格区域引用,则可以使用类似A1:A5的形式。
(3)内存数组
内存数组被保存于计算机内存中。例如,一些数组经过运算得到的数组就是内存数组。举一个例子,{1;2}*{3;4}运算之后得到的就是一个新的内存数组{3;8},我们可以在公式编辑栏中选中公式={1;2}*{3;4},然后按快捷键F9就会得到{3;8}。
按维度分,数组可以分为一维数组、二维数组、三维数组……一直到六十维数组。
一行/一列引用就是一维数组。
一个工作表里的多行多列引用就是二维数组。
多个工作表的引用就是多维引用。
选择了单元格区域按快捷键Ctrl+Shift+Enter后如何修改数组?
选择单元格区域,按快捷键Ctrl+Shift+Enter后,不能删除单元格区域中的一个单元格,如果要删除数组,则要选中全部单元格,或者按快捷键Ctrl+/,再按快捷键Delete,否则会弹出如下图所示的提示。
要修改数组公式,先选中数组中的一个单元格,在其中修改公式后,还要再次按快捷键Ctrl+Shift+Enter。
5. 数组运算
下面以区域数组为例来讲解数组运算。
第1种:1个单元格与1行单元格的运算,如下图所示。
第2种:1个单元格与1列单元格的运算,如下图所示。
第3种:1个单元格与多行多列单元格的运算,如下图所示。
第4种:1行单元格与1行单元格的运算,如下图所示。
第5种:1列单元格与1列单元格的运算,如下图所示。
第6种:1行单元格与1列单元格的运算,如下图所示。
第7种:1行单元格与1个单元格区域的运算,如下图所示。
第8种:1列单元格与1个单元格区域的运算,如下图所示。
第9种:1个单元格区域与1个单元格区域的运算,如下图所示。