在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会在消息框中给出筛选后的记录数,注意该记录数不包括标题行。