LibreOffice Calc:筛选列表中小于0数值的平均值计算求助
解决LibreOffice Calc筛选后小于0数值的平均值计算问题
要计算筛选后J23:J1026区域中小于0的数值平均值,且结果随筛选自动更新,可基于你已有的计数公式扩展实现:
方法1:拆分计算(总和+平均值)
计算符合条件的可见数值总和
在空白单元格(比如D20)中输入公式:=SUMPRODUCT(SUBTOTAL(9;OFFSET(J23;ROW(J23:J1026)-ROW(J23);0));(J23:J1026<0)+0)公式说明:
SUBTOTAL(9;OFFSET(...)):逐个检查J列单元格,返回可见单元格的数值(隐藏行的单元格会被SUBTOTAL忽略,返回0)(J23:J1026<0)+0:将“数值小于0”的判断结果转为0或1,仅保留符合条件的单元格SUMPRODUCT:将两个数组相乘后求和,得到所有可见且小于0的数值总和
计算平均值
在目标单元格(比如D21)中输入公式:=IFERROR(D20/D19;0)公式说明:
D20是步骤1算出的总和,D19是你已有的符合条件的可见数值数量IFERROR用于处理无符合条件数值时的除数为0错误,返回0(也可改为""返回空值)
方法2:合并成单个公式
如果不想拆分计算,可直接在目标单元格输入合并公式:
=IFERROR(SUMPRODUCT(SUBTOTAL(9;OFFSET(J23;ROW(J23:J1026)-ROW(J23);0));(J23:J1026<0)+0)/SUMPRODUCT(SUBTOTAL(3;OFFSET(J23;ROW(J23:J1026)-ROW(J23);0));(J23:J1026<0)+0);0)
这个公式将总和与计数的计算逻辑合并,直接输出平均值,同样会随筛选操作自动更新结果。
内容的提问来源于stack exchange,提问作者electricar
相关产品推荐
相关产品推荐

