excel - 删除自动过滤器中的可见行 - 跳过空过滤器结果
问题描述
我目前有一个宏通过自动过滤器中的多个条件并删除可见行。这似乎运作良好,直到没有符合条件的行并且它给我一个错误。
我尝试使用下面的“if”函数,但即使自动过滤器下没有结果,它似乎也不会跳到“End If”,并且 LstRw 将为 1。
我用'if'函数做错了什么,还是我使用'LstRw'(Range)的方式?
With S1
LstRw = .Cells(.Rows.Count, "A").End(xlUp).Row
.Range("$A$1:$G" & LstRw).AutoFilter Field:=5, Criteria1:="<" & Format(DatePast, "mm/dd/yyyy")
.Range("$A$1:$G" & LstRw).AutoFilter Field:=3, Criteria1:=Array("ZD", "="), Operator:=xlFilterValues
If LstRw > 1 Then
Set rng = .Range("A2:A" & LstRw).SpecialCells(xlCellTypeVisible)
rng.EntireRow.Delete
End If
.ShowAllData
End With
解决方案
推荐阅读
- python - Pysimplegui 文本元素变量和固定文本
- javascript - Facebook Pixel 和 Safari IOS - “Object.values 不是函数。”
- gradle - 如何在不再次添加存储库的情况下使库成为可消耗品
- javascript - 为什么我在 Ionic-React 上的事件不起作用?
- javascript - 如何使用javascript逐字反转字符串中的单词?
- internet-explorer-11 - DataStudio 图表在 Internet Explorer 11 中的初始页面加载失败
- javascript - 增加对 map function() 和语法的理解
- audio - 使用 FFmpeg 或类似软件将视频中的音频标准化为 EBU R128 标准
- javascript - 我收到“不变违规”错误的渲染方法做错了什么?
- kotlin - 检查对象的类是否继承自特定的密封类