VBA Excel取消筛选和重新筛选
在我的问题中 我收到了一段很棒的代码,但在完全测试之前,我意外地“批准”了答案。现在,事实证明,如果在代码执行之前未应用过滤器(未进行过滤),则不会重新应用过滤器 希望有人能帮助找到小的调整,做的把戏。 我猜应该允许filterdata为空,但我无法确定如何或在何处进行此调整VBA Excel取消筛选和重新筛选,excel,vba,Excel,Vba,在我的问题中 我收到了一段很棒的代码,但在完全测试之前,我意外地“批准”了答案。现在,事实证明,如果在代码执行之前未应用过滤器(未进行过滤),则不会重新应用过滤器 希望有人能帮助找到小的调整,做的把戏。 我猜应该允许filterdata为空,但我无法确定如何或在何处进行此调整 提前谢谢。好吧,我得想办法解决它,所以我做了一个if。 因此-如果没有使用过滤器,只需插入一行,否则删除过滤器,添加该行并再次插入过滤器 Dim I As Long Dim Cnt As Integer Cnt = 0
提前谢谢。好吧,我得想办法解决它,所以我做了一个if。 因此-如果没有使用过滤器,只需插入一行,否则删除过滤器,添加该行并再次插入过滤器
Dim I As Long
Dim Cnt As Integer
Cnt = 0
With ActiveSheet.AutoFilter
For I = 1 To .Filters.Count
If .Filters(I).On Then
Cnt = Cnt + 1
End If
Next I
End With
If Cnt = 0 Then
'insert a row copy
ActiveCell.EntireRow.Copy
Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(CopiesCount, 0)).EntireRow.Insert
Shift:=xlDown
Application.CutCopyMode = False
Else -- the code from the other question
也许不是最漂亮的东西,但它很管用。真希望有人能帮我解决这个小问题:-)