在工作表中对数值进行计数的方法

无论你是在统计你组织中部门的人数还是每个季度售出的单位数量,计数总是数据分析不可或缺的组成部分。 Excel 提供了可用于对数据的单元格、行或列计数的多种方法。 为帮助您做出最佳选择, 本文提供了方法的综合摘要、一个带交互式示例的可下载工作簿以及指向相关主题的链接以进一步理解。

注意: 不应将计数与求和混淆。 有关单元格、列或行中的值求和的详细信息, 请参阅对 Excel 数据进行求和和计数的方法

下载我们的示例

你可以下载一个示例工作簿, 该工作簿提供示例来补充本文中的信息。 本文中的大部分部分将参考示例工作簿中的相应工作表, 该工作簿提供示例和详细信息。

下载用于对电子表格中的值进行计数的示例

本文内容

简单计数

可使用简单函数、单击按钮或使用工作表函数计算区域或表中的值的数目。

Excel 还可在 Excel 状态栏 上显示所选单元格中数字的计数。 请参阅以下视频演示,以便快速了解如何使用状态栏。 另请参阅在状态栏上显示计算和计数部分以了解详细信息。 当你希望概览数据而没有时间输入函数时,可以参考状态栏上显示的值。

视频:使用 Excel 状态栏对单元格进行计数

观看以下视频, 了解如何在状态栏上查看计数。

您的浏览器不支持视频。 安装 Microsoft Silverlight、Adobe Flash Player 或 Internet Explorer 9。

使用“自动求和”

通过选择包含至少一个数值的单元格区域来使用 "自动求和"。 然后在 "公式" 选项卡上, 单击 "自动求和" > Count 数字

Count Numbers

Excel 将在与你所选择的区域相邻的一个单元格中,返回该区域中的数字值的计数。 通常情况下,此结果将显示在水平区域右侧的一个单元格或垂直区域下方的一个单元格中。

返回页首

添加小计行

可以向 Excel 数据添加分类汇总行。 单击数据内的任意位置, 然后单击 "数据" > "分类汇总"。

注意: "分类汇总" 选项仅适用于普通 excel 数据, 而不是 excel 表、数据透视表或数据透视图。

单击 "数据" 选项卡中的 "分类汇总", 在 Excel 数据中添加分类汇总行

另外, 请参阅以下文章:

返回页首

使用 SUBTOTAL 函数对列表或 Excel 表格列中的单元格进行计数

使用SUBTOTAL函数计算 Excel 表格或单元格区域中值的个数。 如果表或区域包含隐藏的单元格, 则可以使用分类汇总来包含或排除隐藏的单元格, 这是 SUM 和 SUBTOTAL 函数之间的最大区别。

分类汇总语法如下所示:

SUBTOTAL(function_num,ref1,[ref2],...)

小计示例

若要包括范围中的隐藏值, 应将function_num参数设置为2

若要排除范围中的隐藏值, 请将function_num参数设置为102

返回页首

根据一个或多个条件计数

你可以使用几个工作表函数对区域中满足指定条件的单元格进行计数。

视频:使用 COUNT、COUNTIF 和 COUNTA 函数

观看以下视频,了解如何使用 COUNT 函数以及如何使用 COUNTIFCOUNTA 函数来仅对满足指定条件的单元格进行计数。

您的浏览器不支持视频。 安装 Microsoft Silverlight、Adobe Flash Player 或 Internet Explorer 9。

返回页首

使用 COUNT 函数对区域中的单元格进行计数

使用公式中的 COUNT 函数计算区域中数值的数目。

COUNT 函数的示例

在上面的示例中, A2、A3 和 A6 是唯一包含区域中的数字值的单元格, 因此输出为3。

注意: A7 是一个时间值, 但它包含文本 (a.m.), 因此 COUNT 不认为它是数值。 如果您要删除一个 a.m。 在单元格中, COUNT 将 A7 视为数值, 并将 "输出" 更改为4。

返回页首

使用 COUNTIF 函数,根据单个条件对区域中的单元格进行计数

使用COUNTIF 函数函数计算某一单元格区域中出现特定值的次数。

COUNTIF 示例

返回页首

使用 DCOUNT 函数,根据单个或多个条件对列中的单元格进行计数

DCOUNT 函数对列表或数据库中满足指定条件的记录字段 (列) 中包含数字的单元格进行计数。

在以下示例中, 你想要查找的月数包括或晚于2016年3月的销售额超过400个单位。 工作表中的第一个表 (从 A1 到 B7) 包含销售数据。

DCOUNT 的示例数据

DCOUNT 使用条件确定应从何处返回值。 条件通常输入到工作表本身的单元格中, 然后在criteria参数中引用这些单元格。 在此示例中, 单元格 A10 和 B10 包含两个条件, 一个指定返回值必须大于 400, 另一个指定该结束月份应等于或大于3月31日 (2016)。

应使用以下语法:

= DCOUNT (A1: B7, "结束月份", A9: B10)

DCOUNT将检查区域 A1 到 B7 中的数据, 应用在 A10 和 B10 中指定的条件, 并返回2, 即满足两个条件的行的总数 (第5行和第7行)。

返回页首

使用 COUNTIFS 函数根据多个条件对区域中的单元格进行计数

COUNTIFS函数类似于 COUNTIF 函数, 其中一个重要异常: COUNTIFS 允许你将条件应用于跨多个区域的单元格, 并计算满足所有条件的次数。 您最多可以使用 COUNTIFS 的127范围/标准对。

COUNTIFS 的语法为:

COUNTIFS(criteria_range1, criteria1, [criteria_range2, criteria2],…)

请参阅以下示例:

COUNTIFS 示例

返回页首

同时使用 COUNT 和 IF 函数根据条件进行计算

假设你需要确定哪些销售人员销售了某一地区的某一特定项目, 或者你希望了解特定销售人员所支付的某一价值的销售额。 则可以同时使用 IF 和 COUNT 函数,即,首先使用 IF 函数检验条件,然后仅当 IF 函数的结果为 TRUE 时,使用 COUNT 函数对单元格进行计数。

注意: 

  • 此示例中的公式必须按数组公式的形式输入。 如果您在 Excel for Windows 或 Excel 2016 for Mac 中打开此工作簿, 并且希望更改公式或创建类似的公式, 请按 F2, 然后按 Ctrl + Shift + Enter, 以使公式返回预期结果。 在早期版本的 Excel for Mac 中, 使用 命令 + Shift + Enter。

  • 为了使示例公式有效, IF 函数的第二个参数必须是数字。

嵌套计数和 IF 函数示例

返回页首

同时使用 SUM 和 IF 函数计算多个文本或数值出现的频率

在下面的示例中,我们同时使用 IFSUM 函数。 首先,IF 函数会检验某些单元格内的值,然后如果检验结果为 True,SUM 函数将对通过检验的值进行求和。

示例 1

示例 1: SUM 和嵌套在公式中的函数

上面的函数显示 C2: C7 包含林丹刘天妮的值, 则 SUM 函数应显示满足条件的记录的总和。 该公式为林丹和给定区域中的刘天妮查找三条记录, 并显示4

示例 2

示例 2: SUM 和 IF 嵌套在公式中

上面的函数指示 D2: D7 包含小于 $9000 或大于 $19000 的值, 而 SUM 应显示满足条件的所有记录的总和。 公式发现两个记录 D3 和 D5, 其中的值小于 $9000, 而 D4 和 D6 的值大于 $19000, 则显示4

示例 3

示例 3: SUM 和嵌套在公式中

上面的函数表明如果 D2: D7 的林丹的发票小于 $9000, 则 SUM 应显示满足条件的记录的总和。 公式发现 C6 满足条件, 并显示1

重要: 此示例中的公式必须按数组公式的形式输入。 这意味着按F2 , 然后按Ctrl + Shift + enter。 在早期版本的 Excel for Mac 中使用 命令 + Shift + Enter。

请参阅下列知识库文章以了解更多提示:

返回页首

对数据透视表中的列或行中的单元格进行计数

数据透视表对数据进行汇总, 并通过让您选择要查看数据的类别来帮助您分析数据并向下钻取。

你可以通过选择数据区域或 Excel 表格来快速创建数据透视表,然后,在“插入”选项卡上的“表格”组中,单击“数据透视表”。

数据透视表和“字段”如何关联到“字段列表”的示例。

我们来看看销售电子表格的示例方案, 您可以在其中计算特定季度的高尔夫球和网球有多少个销售价值。

注意: 对于交互式体验, 你可以对可下载工作簿中的数据透视表工作表中提供的示例数据运行这些步骤。

  1. 在 Excel 电子表格中输入以下数据。

    数据透视表的示例数据
  2. 选择 A2: C8

  3. 单击“插入”>“数据透视表”。

  4. 在 "创建数据透视表" 对话框中, 单击 "选择表或区域", 然后单击 "新建工作表", 然后单击"确定"

    将在新工作表中创建一个空数据透视表。

  5. 在 "数据透视表字段" 窗格中, 执行下列操作:

    1. 将 "运动" 拖到 "" 区域。

    2. 将 "季度" 拖到 "" 区域。

    3. 将 "销售额" 拖到 "" 区域。

    4. 重复步骤 c。

      字段名称在 "数据透视表" 和 "值" 区域中显示为SumofSales2

      此时, "数据透视表字段" 窗格如下所示:

      数据透视表字段
    5. 在 "" 区域中, 单击 " SumofSales2 " 旁边的下拉列表, 然后选择 "值字段设置"。

    6. 在 "值字段设置" 对话框中, 执行下列操作:

      1. 在 "值字段汇总" 部分中, 选择 "计数"。

      2. 在 "自定义名称" 字段中, 修改名称以进行计数

        "值字段设置" 对话框
      3. 单击“确定”

    数据透视表显示第3季度和第4季度的 "高尔夫" 和 "网球" 记录的数量以及销售数字。

    数据透视表

返回页首

当你的数据包含空值时进行计数

你可以使用工作表函数来对包含数据或者为空的单元格进行计数。

使用 COUNTA 函数对区域中的非空单元格进行计数

使用COUNTA 函数函数仅对包含值的区域中的单元格进行计数。

当对单元格进行计数时,有时你想要忽略所有空白单元格,因为仅具有值的单元格才对你有意义。 例如, 您想要计算进行销售的销售人员的总数 (列 D)。

COUNTA 的示例

COUNTA忽略 D3、D4、D8 和 D11 中的空值, 并仅对包含列 D 中的值的单元格进行计数。该函数在列 D 中查找包含值的六个单元格, 并将其显示为6

返回页首

使用 DCOUNTA 函数对具有特定条件的列表中的非空单元格进行计数

使用 DCOUNTA 函数对列表或数据库中满足指定条件的记录列中的非空单元格进行计数。

下面的示例使用DCOUNTA函数对区域 A1: B7 中包含的包含在条件区域 A9: B10 中指定的条件的数据库中的记录数进行计数。 这些条件是产品 ID 值必须大于或等于 2000, 并且分级值必须大于或等于50。

DCOUNTA 函数的示例

DCOUNTA 查找满足条件的两行-第2行和第4行, 并将值2显示为输出。

返回页首

使用 COUNTBLANK 函数对连续区域中的空单元格进行计数

使用COUNTBLANK 函数函数返回连续区域中的空白单元格的数量 (如果单元格完全以连续序列连接, 则是连续的)。 如果单元格包含返回空文本 ("") 的公式,则该单元格将计算在内。

当对单元格进行计数时,有时你想要包含空白单元格,因为它们对你有意义。 在下面的杂货销售电子表格示例中。 假设您想要了解有多少单元格中没有提及的销售数据。

COUNTBLANK 的示例

注意: COUNTBLANK 工作表函数为确定区域中的空白单元格的数量提供了最方便的方法, 但当感兴趣的单元格在已关闭的工作簿中或者当它们未形成连续范围时, 它不会很好地工作。 知识库文章XL: 何时使用 sum (if ()) 而不是 CountBlank ()显示如何在这些情况下使用 SUM (if ()) 数组公式。

返回页首

使用 SUM 和 IF 函数组合对非连续区域中的空单元格进行计数

使用 SUM 函数和 IF 函数的组合。 通常, 你可以通过在数组公式中使用IF函数来确定每个引用的单元格是否包含值, 然后计算由公式返回的 FALSE 值的个数。

请参阅与本主题中的 sum 和 if 函数一起使用 sum 和 if 函数, 在较前面的部分中计算多个文本或数字值出现的次数。

返回页首

对仅出现一次的值进行计数

可以使用数据透视表COUNTIF 函数SUM 和 IF 函数对区域中的唯一值进行计数, 或使用 "高级筛选" 对话框对其进行计数。

使用“高级筛选”对列表列中的唯一值进行计数

使用“高级筛选”对话框找到数据列中的唯一值。 你可以就地筛选值,或将其提取并粘贴到新的位置。 然后可以使用 ROWS 函数计算此新区域中项目的个数。

若要使用 "高级筛选", 请单击 "数据" 选项卡, 然后在 "排序 & 筛选" 组中, 单击 "高级"。

下图显示了如何使用“高级筛选”仅将唯一记录复制到工作表上的新位置。

高级筛选

在下图中, 列 E 包含从 D 列中的区域复制的值。

从另一个位置复制的列

注意: 

  • 如果就地筛选数据,将不会从工作表中删除值 — 可能会隐藏一个或多个行。 单击“数据”选项卡上的“排序和筛选”组中的“清除”以重新显示这些值。

  • 如果你只想要快速查看唯一值的数目,在使用“高级筛选”后选择数据(筛选或复制的数据),然后查看状态栏。 状态栏上的“计数”值应等于唯一值的数目。

有关详细信息, 请参阅使用高级条件进行筛选

返回页首

使用 IF、SUM、FREQUENCY、MATCH 和 LEN 函数计算区域中满足一个或多个条件的唯一值的个数

使用 IFSUMFREQUENCYMATCHLEN 函数的多个组合。

有关详细信息和示例, 请参阅文章对重复项中的唯一值进行计数 "使用函数计算唯一值的个数" 部分。

此外,请参阅文章 XL:如何确定列表中唯一项目的数目

返回页首

特殊情况(对所有单元格进行计数,统计字数)

你可以使用工作表函数的各种组合计算区域中单元的格数目或字数。

使用 ROWS 和 COLUMNS 函数计算区域中的单元格总数

假设你想要确定大工作表的大小以决定是否要在你的工作簿中使用手动或自动计算。 若要对区域中的所有单元格进行计数, 请使用使用ROWSCOLUMNS函数将返回值相乘的公式。 有关示例, 请参阅下面的图像:

计算区域中的单元格个数的 ROWS 和 COLUMNS 函数的示例

返回页首

使用 SUM、LEN、TRIM 和替代函数的组合对区域中的字数进行计数

可以在数组公式中使用SUMLENTRIM替换函数的组合。 以下示例显示了使用嵌套公式查找一个单元格区域 (其中3个为空) 中的单词数的结果。 有些单元格包含前导或尾随空格 — TRIMSUBSTITUTE 函数将在进行任何计数之前删除这些额外的空格。 请参阅以下示例:

用于统计字数的嵌套公式示例

现在, 为使上述公式正常工作, 您必须将其设为数组公式, 否则公式将返回 #VALUE! 错误。 若要执行此操作, 请单击包含公式的单元格, 然后在编辑栏中按 Ctrl + Shift + Enter。 Excel 将在公式的开头和结尾处添加一个花括号, 从而使其成为数组公式。

有关数组公式的详细信息, 请参阅Excel 中的公式概述创建数组公式

返回页首

在状态栏上显示计算和计数

当选中一个或多个单元格时,Excel 状态栏上将显示有关这些单元格中数据的信息。 例如,如果选择工作表中的四个单元格,其值分别为 2、3、文本字符串(如“云”)和 4,则可在状态栏上同时显示下列所有值:平均值、计数、数值计数、最小值、最大值和求和结果。 右键单击状态栏以显示或隐藏任意或全部值。 这些值显示在下图中。

状态栏

返回页首

是否有特定的 Excel 问题?

在 Excel 社区论坛中发布问题

帮助我们改进 Excel

是否有关于如何改进下一版 Excel 的建议? 如果有,请查看 Excel User Voice 上的主题

注意:  本页面是自动翻译的,可能包含语法错误或不准确之处。 我们的目的是使此内容能对你有所帮助。 能否告知我们此信息是否有所帮助? 下面是该参考内容的英文版

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×