平凡人
回答者
回答于 2026-10-17
在Excel中统计B列数值大于A列对应数值的行数,推荐使用SUMPRODUCT函数。
核心公式
假设数据范围为第1行至第100行,公式为:
=SUMPRODUCT(--(B1:B100>A1:A100))
操作步骤
- 确定需要比较的数据范围(如A1:A100与B1:B100)。
- 在空白单元格中输入上述公式。
- 按Enter键确认,即可得到满足条件的行数。
判断依据与原理解析
B1:B100>A1:A100会逐行比较两列数值,返回由TRUE和FALSE组成的内存数组。- 双负号
--的作用是将逻辑值TRUE转换为1、FALSE转换为0。 - SUMPRODUCT函数对转换后的数组求和,结果即为B列大于A列的行数。
适用条件
- 适用于Excel 2007及以上版本。
- 两列参与比较的范围行数必须完全一致,否则公式会返回#VALUE!错误。
- 若使用Microsoft 365或Excel 2021及以上版本,也可直接使用
=SUM(B1:B100>A1:A100),无需双负号和SUMPRODUCT。
常见误区
- 误用COUNTIF函数:COUNTIF不支持直接进行两列对应单元格的逐行比较,无法实现此需求。
- 忽略空单元格影响:当某行A列和B列均为空时,空值比较结果为FALSE,不影响统计;但若仅一列为空,需注意空值在比较运算中被视为0,可能产生非预期的统计结果。建议先用ISNUMBER等函数排除非数值干扰。