我经常想对列的线性组合执行聚合函数,而不必创建新列来保存线性组合。有办法吗?
例如,如果我的工作表在 A:B 列中有数据,而我想要STDEV
A+B 系列的数据,那么现在我必须先创建一个新的 C 列并填充公式C2 = A2 + B2
。然后我就可以得到=STDEV(C:C)
。
在这个例子中:是否有一个符号可以让我跳过 C 列的创建,而是执行类似 STDEV(A:A+B:B) 的操作?
答案1
添加整个列时会出现问题,因为添加后,空白单元格会被视为零。当然,单列引用不会发生这种情况,我称之为错误。
您可以使用 IF() 将零替换为空白来解决此问题:
=AVERAGE(IF(A:A+B:B<>0,A:A+B:B,""))
=STDEV(IF(A:A+B:B<>0,A:A+B:B,""))
以总和作为参数的公式是数组公式,必须用CTRLShift Enter 而不是仅仅来输入Enter。
还要注意,添加的列中的任何文本(如标题)都会导致错误#VALUE!
。 编辑: 但这个修改将处理这个问题:
=AVERAGE(IF((A:A+B:B<>0)*NOT(ISTEXT(A:A+B:B)),A:A+B:B,""))
希望这能有所帮助。祝你好运。