18721107673
vba判断筛选出的数据是否存在
Public Sub 使用筛选按钮_查询没有账簿或年度为空的行()
'--筛选异常数据
Dim Hang As Long
Dim ZhHang As Long
Dim Lie As Long
Dim ZhLie As Long
'---计算最后行---jch01-05-数据源页签
With Worksheets("jch01-05")
ZhLie = .Cells(10, .Columns.Count).End(xlToLeft).Column '--适合第10行为标题的格式(以第10行为标准,计算最后列)
End With
With Worksheets("jch01-05")
ZhHang = 0
For Lie = 1 To ZhLie
If ZhHang < .Cells(.Rows.Count, Lie).End(xlUp).Row Then
ZhHang = .Cells(.Rows.Count, Lie).End(xlUp).Row
End If
Next
End With
'--------------------------------------------------------
'--增加筛选按钮
With Worksheets("jch01-05")
ZhLie = .Cells(10, .Columns.Count).End(xlToLeft).Column
.AutoFilterMode = False '--如果存在筛选按钮,则取消筛选(这样所有数据就都出来了)
.Rows("10:10").AutoFilter '--在指定区域增加自动筛选的按钮
End With
'--筛选为空的记录
Lie = 1 '--指定要筛选的列号
With Worksheets("jch01-05")
.Range(.Cells(10, Lie), .Cells(ZhHang, Lie)).AutoFilter Field:=Lie, Criteria1:="=" '--变量Lie为指定要筛选的列号
'--检查筛选结果是否为空
If .AutoFilter.Range.SpecialCells(xlCellTypeVisible).Count = 0 Then
MsgBox "筛选结果为空"
Else
MsgBox "筛选结果不为空"
End If
End With
End Sub