时间:2018-01-17 23:04:19

标签: excel-vba vba excel

在Excel Vba中,我在表列上引用了一个过滤ListObject的过滤器;

With TableX
.Range.AutoFilter Field:=15, Criteria1:="100"
End With

我想在执行更多代码之前测试已过滤的列,因为过滤器可能不返回与值100匹配的行。 我找到了一些关于TotalsCalculation方法的信息,但很难对其进行编码。关于我在这个简单例子中缺少什么的想法?

1 个答案:

答案 0 :(得分:0)

以下代码将测试是否有零行。为了能够无误地使用SpecialCells(xlCellTypeVisible)方法,我将包含始终存在的标题行,因此如果可见单元格行数是> 1你可以放心,至少有一个值为100。

With TableX

    .Range.AutoFilter Field:=15, Criteria1:="100"

    If Intersect(.Range, .ListColumns(15).Range).SpecialCells(xlCellTypeVisible).Rows.Count > 1 Then
        'do stuff
    End If

End With