You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何统计Excel中某行上方到最近非零值之间的零值数量

解决方案:计算上方到最近非零值的零值数量

根据你的需求,这里提供两种适用于不同Excel版本的公式,直接在F列对应单元格输入后下拉即可:

适用于Excel 365/2021(支持动态数组)

在F4单元格输入以下公式,下拉填充到F19:

=IF(C4<>0,0,ROW()-XLOOKUP(TRUE,C$3:C3<>0,ROW($3:3),ROW($3:3),0,-1)-1)

公式说明:

  • XLOOKUP(TRUE,C$3:C3<>0,ROW($3:3),ROW($3:3),0,-1):向上查找当前行上方(C3到上一行)第一个非零值所在的行号;如果上方全是零,会返回C3的行号。
  • 用当前行号减去这个行号再减1,得到中间的零值数量;若当前C列单元格本身非零,直接返回0。

适用于旧版Excel(无XLOOKUP支持)

在F4单元格输入以下公式,下拉填充到F19:

=IF(C4<>0,0,ROW()-LOOKUP(2,1/(C$3:C3<>0),ROW($3:3))-1)

公式说明:

  • LOOKUP(2,1/(C$3:C3<>0),ROW($3:3)):利用LOOKUP特性,找到当前行上方最后一个非零值的行号;如果上方全是零,会返回C3的行号。
  • 后续计算逻辑和上方一致,当前C单元格非零则返回0。

验证示例:

假设C14为非零值,C15、C16、C17都是0:

  • F17的计算:17-14-1=2,符合你提到的结果2
  • F18的计算:如果C18上方最近非零还是C14,18-14-1=3,符合你提到的结果3

内容的提问来源于stack exchange,提问作者Jessy Saint

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 16:03:18