【问题标题】:Excel: Formula to Count cells from a column after formatting and filterExcel:格式化和过滤后计算列中单元格的公式
【发布时间】:2017-09-04 08:33:27
【问题描述】:
我有一个 2 列的 Excel,每列有 665 个单元格。格式化并找到重复值后,我制作了一个过滤器,以便只显示重复值。
这是一个打印屏幕。
https://snag.gy/K4c3B5.jpg
在这种情况下,我想找到计算列 A 或 B 中的单元格(在格式化和过滤之后)的公式,就像它在打印屏幕中显示的那样。
如您所见,我尝试将=COUNTA(A1:A5000) 放入 H 列的单元格中,但不起作用。谁能帮帮我?
【问题讨论】:
标签:
excel
filter
count
formula
【解决方案1】:
如果需要计算过滤列表中可见项目的数量,请使用 SUBTOTAL 函数,该函数会自动忽略被过滤器隐藏的行。
SUBTOTAL 函数可以执行 COUNT、SUM、MAX、MIN、AVERAGE、PRODUCT 等计算(参见下表)。它会自动忽略过滤列表或表格中不可见的项目。这使其非常适合显示列表中可见的项目数、可见行的小计等。它还提供手动隐藏的控制行。
您的问题的解决方案是在过滤器处于活动状态时计算 A 列和 B 列中可见的非空白行数,使用:
=小计(103,$A:$A)
应用小计公式时要记住的要点:
- 当 function_num(第一个参数)在 1-11 之间时,SUBTOTAL 包括手动隐藏但忽略过滤器隐藏的值。
- 当 function_num 介于 101-111 之间时,SUBTOTAL 会排除所有类型的隐藏值。
- 在过滤列表中,SUBTOTAL 始终忽略隐藏行中的值,而不管 function_num 是什么。
- SUBTOTAL 忽略引用中存在的其他小计,以防止
重复计算
- SUBTOTAL 仅适用于垂直排列的垂直数据值。
- 在水平隐藏列中,值始终包括在内,从不忽略。
【解决方案2】:
使用 SubTotal 函数,它只会为您提供过滤单元格的计数。
还要从范围中排除标题,我想这不是必需的。
=SUBTOTAL(3,A2:A5000)
【解决方案3】:
对于过滤的数据,或者您可以说可以使用可见单元格 Sutotal 和 Countifs,因为两者都会忽略过滤的行。
=小计 (3,A1:D10)
=小计 (103,A1:D10)
要使用 Countifs 需要一个辅助 col,假设您的过滤数据在 A2 到 D20 范围内,然后在 E2 中写下这个,
=if(B2:B20,"英国", 1,"")
然后
=COUNTIF (B2 :B20, "UK", E2 :E20, "1")
注意:根据需要更改单元格地址。