上次数组公式里的函数分类里说到了2种 普通函数/公式
(1)部分能处理数组的普通函数,但只会返回数组的第1个数 还要注意一些细节rows() 返回行数,是一定不能用于数组运算的row() 返回行号,可以处理数组,但不能直接返回数组,返回的一定是1个数(不是数组)也就是说,不配合数组函数,或其他可处理数组内部数的函数,这个基本上无用。{row()} 返回一组行号,可以 结合数组公式返回 数组,把返回的数组存在一个单元格(2) 部分函数(聚合函数)可处理数组的整体,可以显示正确结果,但只会显示1个结果 比如聚合类的sum等,比如 :sum(){sum()} 和sum() 还是有差别,差别在于 中间计算过程是否遵循数组计算
部分聚合函数举例
and()or()sum()max()min()2 聚合函数的用法要注意,以 and() 为什么不用在数组函数{} 中 为例子 and() 只能返回1个值,这里不能用and 如果是两个条件,可以用 (F12:F21=D12)*(G12:G21=D13) 来联合判断 或(F12:F21=D12)+(G12:G21=D13)=2 来联合判断 因为true为1,false为0 直接用 bool值的数组运算,而不要用and() or()这种函数
上面的例子看,错误写法1,第3步,计算错误的原因就是and() 只能返回1个值,true/false,而不能返回数组,破坏了数组公式的计算过程