我有一些代码可以根据第一个条件自动过滤工作表,如果没有返回条件,则根据第二个条件自动过滤。 条件语句是我需要帮助的地方,即使第二行的第一个单元格中有数据,它也会不断出错(我显然不想包含标题):
With ActiveSheet
.AutoFilterMode = False
With .Range("A1:F1")
.AutoFilter Field:=1, Criteria1:="FirstTest"
'See if first cell in second row is blank
If (.Offset(2,1).SpecialCells(xlCellTypeVisible).Value = "") Then
'if blank, change criteria
.AutoFilter Field:=1, Criteria1:="SecondTest"
End If
End With
End With
我知道您可以将 VBA.Array 用于多个条件,但这变得更加复杂,我现在只需要如何引用第二行中的可见数据。
预先感谢您的任何帮助。
最佳答案
尝试这个:
With ActiveSheet
.AutoFilterMode = False
With .Range("A1:F1")
.AutoFilter Field:=1, Criteria1:="FirstTest"
'See if first cell in second row is blank
If (.Parent.AutoFilter.Range.SpecialCells(xlCellTypeVisible).Count < 2) Then
'if blank, change criteria
.AutoFilter Field:=1, Criteria1:="SecondTest"
End If
End With
End With
关于vba - AutoFilter - 找出第二行可见单元格是否为空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8982686/