Excel之数组公式(3)
八、TRIMRANGE函数
此函数名字包括TRIM(裁剪)和RANGE(区域)两个单词,即裁剪区域的意思。它有什么用呢?
我们有时会遇到这样一种情况:某些函数需要引用一个区域,如果限制住区域的引用范围,可能今后这个区域还会增减内容,也就是具体的范围会发生变动,但如果不限制范围(比如直接引用整行整列),那么公式的计算会拖慢软件的响应。这时如果有个函数能自动判断区域大小就好了。本函数就可以实现这个功能。

=TRIMRANGE(1:2)
以上引用了两个整行,但是只返回一个填了元素的范围(注意其中标志动态数组的细框)。

本例TRIMRANGE函数把空单元格改成了带0的单元格。
有时我们不想从头开始裁剪,怎么办呢?可以选择一个远大于实际使用的区域进行裁剪。比如中学一个年级不会达到上万人。

=TRIMRANGE(B3:C10000,1)




计算平均值时还显不出来这个函数的好处,但用于比较费时的函数如VLOOKUP时,可以有效避免延迟感。
九、TRANSPOSE函数
有时可能需要把数组的行列转换方向,可以用这个函数。比如:
=TRANSPOSE(A1:C2)

下例先裁剪后转置,注意2的前面有一个点号:
=TRANSPOSE(1:.2)

十、SEQUENCE函数
这个函数名是序列的意思,就是生成一个序列。
参数1:行数。
参数2:列数。
参数3:起始值。
参数4:增量。
下面的例子,以1.1开始,每次增加0.1,得到一个2行3列的数组。
=SEQUENCE(2,3,1.1,0.1)

要想得到一个由不变量组成的数组,可以把最后一个参数设为0。
本函数除了参数1,其余都可以省略,这些被省略的参数默认是1。下面三块数组分别表示只有参数1,只有参数1,2和只有参数1,2,3的情况。


夜雨聆风