错误:“无单元格”。如果为true,则使用if退出sub,但是错误不断弹出

时间:2019-01-11 11:59:34

标签: excel vba autofilter

下面的代码是较大代码的一部分,在较大代码中,某些数据通过使用自动筛选进行了过滤。在大多数情况下,过滤后的单元中都有数据。但是,在某些情况下,没有数据,并且在尝试使用副本时,出现错误“无单元格”。有道理。

因此,如果过滤后的单元格中没有数据,我将尝试使用下面的代码退出子程序。但是“ No Cells”错误一直在代码的第一行中弹出。

我已经测试了范围,并且正确填充了该范围。

我尝试过.Cells.Count,而刚尝试过.Count。什么都没有。

有人可以帮我吗?

If .Range("C5:C" & lastrow).SpecialCells(xlCellTypeVisible).Cells.Count = 0 Then
    .AutoFilterMode = False
    Exit Sub
End If

1 个答案:

答案 0 :(得分:0)

无论何时使用SpecialCells,都应将它们夹在OERNOEGTO之间,如下所示

这是您要尝试的吗? (未经测试

On Error Resume Next
Set rng = .Range("C5:C" & lastrow).SpecialCells(xlCellTypeVisible)
On Error GoTo 0

If rng Is Nothing Then
    .AutoFilterMode = False
    Exit Sub
End If