当前位置: 主页 > Office办公 > Excel专区 > Excel教程 > Excel2003教程 > 在Excel中获取自动筛选后的记录数

在Excel中获取自动筛选后的记录数

  • 2022-12-03
  • 来源/作者: Wps Office教程网/ 菜鸟图库
  • 160 次浏览

当我们在Excel中进行自动筛选后,有时需要知道筛选后所保留的行(记录)数。可以用下面的几种方法:

1.直接在任务栏中查看:

当进行自动筛选后,Excel任务栏的左下角可以看到类似下图所示的提示:

还可以选择筛选区域中的某一列,选择时不包括标题行,可以在任务栏的右边看到类似“计数=2”的字样。要在任务栏中显示计数数量,先必需鼠标右击任务栏,在弹出的快捷菜单中选择“计数”。

2.使用SUBTOTAL函数:

假如要在A1:A50区域中进行筛选,第一行为标题行,可以用下面的公式获取筛选后的记录数:

=SUBTOTAL(3,A2:A50)

其中第一个参数3指定用COUNTA函数进行分类汇总。

3.使用VBA代码:

还可以用VBA代码来获取筛选后的记录数,代码如下:

Sub Filter_Return()
Selection.CurrentRegion.Select
‘确定选择区域中除标题外的总行数
TotalRows = Selection.Rows.Count – 1
DispRows = 0
HideRows = 0

While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
If ActiveCell.RowHeight = 0 Then
HideRows = HideRows + 1
Else
DispRows = DispRows + 1
End If
Wend

If TotalRows = HideRows Then
MsgBox "未找到任何记录"
Else
MsgBox "所选择的区域有" & DispRows – 1 & "条记录"
End If
End Sub

使用方法是,选择筛选区域中的某个单元格,然后运行代码,Excel会在消息框中给出筛选后的记录数,注意该记录数不包括标题行。