跳至主要内容

计算Excel中包含特定值的行数

Author: Xiaoyang Last Modified: 2025-05-07

对我们来说,在Excel工作表中统计具有特定值的单元格数量可能很容易。然而,要获取包含特定值的行数可能会相当复杂。在这种情况下,一个基于SUM、MMULT、TRANSPOSE和COLUMN函数的更复杂公式可能会帮到您。本教程将讨论如何创建这个公式来在Excel中处理这项任务。

doc-count-rows-with-specific-value-1


计算包含特定值的行数

例如,您在工作表中有一个值范围,现在您需要统计包含给定值“300”的行数,如下截图所示:

doc-count-rows-with-specific-value-2

要获取包含特定值的行数,通用语法是:

{=SUM(–(MMULT(–(data=X),TRANSPOSE(COLUMN(data)))>0))}
数组公式,应同时按下 Ctrl + Shift + Enter 键。
  • 数据:要检查是否包含特定值的单元格范围;
  • X:用于统计行数的特定值。

1. 请在希望显示结果的空白单元格中输入或复制以下公式:

=SUM(--(MMULT(--($A$2:$C$12=300),TRANSPOSE(COLUMN($A$2:$C$12)))>0))

2. 然后同时按下 Ctrl + Shift + Enter 键以获得正确结果,见截图:

doc-count-rows-with-specific-value-3


公式解释:

=SUM(--(MMULT(--($A$2:$C$12=300),TRANSPOSE(COLUMN($A$2:$C$12)))>0))

  • --$A$2:$C$12=300:此表达式检查值“300”是否存在于范围A2:C12中,并将生成一个TRUE和FALSE数组结果。双负号用于将TRUE转换为1,将FALSE转换为0。因此,您将得到如下结果:{0,0,0;1,0,0;0,0,0;0,1,1;0,0,0;0,1,0;0,0,0;1,0,0;0,0,1;0,0,0;1,1,1}。该数组由11行3列组成,将在MMULT函数中作为array1使用。
  • TRANSPOSE(COLUMN($A$2:$C$12)):此处的COLUMN函数用于获取范围A2:C12的列号,它返回一个如下的3列数组:{1,2,3}。然后TRANSPOSE函数将此数组转置为一个3行数组{1;2;3},在MMULT函数中作为array2使用。
  • MMULT(--($A$2:$C$12="Joanna"),TRANSPOSE(COLUMN($A$2:$C$12))):此MMULT函数返回上述两个数组的矩阵乘积,您将得到如下结果:{0;1;0;5;0;2;0;1;3;0;6}。
  • SUM(--(MMULT(--($A$2:$C$12="Joanna"),TRANSPOSE(COLUMN($A$2:$C$12)))>0))= SUM(--{0;1;0;5;0;2;0;1;3;0;6}>0):首先,检查数组中大于0的值:如果值大于0,则显示TRUE;如果小于0,则显示FALSE。然后双负号强制将TRUE和FALSE转换为1和0,因此您将得到如下结果:SUM({0;1;0;1;0;1;0;1;1;0;1})。最后,SUM函数对数组中的值求和以返回结果:6。

提示:

如果您需要统计工作表中包含特定文本的行数,请应用以下公式,并记得同时按下 Ctrl + Shift + Enter 键以获得总计数:

=SUM(--(MMULT(--(ISNUMBER(SEARCH("Joanna",A2:C12))),TRANSPOSE(COLUMN($A$2:$C$12)))>0))

doc-count-rows-with-specific-value-4


相关功能:

  • SUM:
  • Excel SUM函数返回提供的值的总和。
  • MMULT:
  • Excel MMULT函数返回两个数组的矩阵乘积。
  • TRANSPOSE:
  • TRANSPOSE函数将根据某个单元格范围返回一个新方向的数组。
  • COLUMN:
  • COLUMN函数返回公式出现的列号或返回给定引用的列号。

更多文章:

  • 满足内部条件时统计行数
  • 假设您有一份今年和去年产品销售的报告,现在您可能需要统计今年销售额大于去年的产品数量,或者今年销售额小于去年的产品数量,如下截图所示。通常,您可以添加一个辅助列来计算两年之间的销售差异,然后使用COUNTIF来获取结果。但是,本文将介绍如何使用SUMPRODUCT函数直接获取结果而无需任何辅助列。
  • 满足多个条件时统计行数
  • 根据多个条件统计范围内的行数,其中一些条件取决于在行级别工作的逻辑测试,Excel中的SUMPRODUCT函数可能会帮到您。
  • 统计等于许多值之一的单元格数量
  • 假设我在A列中有一系列产品列表,现在我想从范围C4:C6中列出的特定产品Apple、Grape和Lemon获取总数,如下截图所示。通常,在Excel中,简单的COUNTIF和COUNTIFS函数在此场景中不起作用。本文将讨论如何通过结合SUMPRODUCT和COUNTIF函数快速轻松地解决此问题。

最佳的办公生产力工具

Kutools for Excel - 助您脱颖而出

🤖 Kutools AI 助手:基于以下功能彻底改变数据分析方式:智能执行   |  生成代码  |  创建自定义公式  |  分析数据并生成图表  |  调用Kutools函数
热门功能查找、高亮或标记重复项  |  删除空行  |  合并列或单元格而不丢失数据  |  四舍五入无需公式 ...
超级VLookup多条件  |  多值  |  跨多个工作表  |  模糊查找...
高级下拉列表简易下拉列表  |  级联下拉列表  |  多选下拉列表...
列管理器添加指定数量的列  |  移动列  |  切换隐藏列的可见状态  比较列以 选择相同和不同的单元格 ...
精选功能网格聚焦  |  设计视图  |  增强编辑栏  |  工作簿与工作表管理器 | 资源库(自动文本)  |  日期提取  |  合并数据  |  加密/解密单元格  |  按列表发送电子邮件  |  超级筛选  |  特殊筛选(筛选粗体/斜体/删除线...) ...
排名前15的工具集12个 文本 工具添加文本删除特定字符 ...)  |  50多种 图表 类型甘特图 ...)  |  40多种实用 公式基于生日计算年龄 ...)  |  19个 插入 工具插入二维码从路径插入图片 ...)  |  12个 转换 工具小写金额转大写汇率转换 ...)  |  7个 合并与拆分 工具高级合并行分割Excel单元格 ...)  |  ... 还有更多

Kutools for Excel拥有超过300种功能,确保您需要的功能只需一键即可实现...


Office Tab - 在Microsoft Office(包括Excel)中启用标签式阅读和编辑

  • 一秒内切换数十个打开的文档!
  • 每天为您减少数百次鼠标点击,告别鼠标手。
  • 在查看和编辑多个文档时,您的工作效率将提高50%。
  • 为Office(包括Excel)带来高效的标签页,就像Chrome、Edge和Firefox一样。