[英]Excel VBA Reset multiple advanced filters with ShowAllData
我在工作表中使用3个高级筛选器,我想重置所有3个表。 使用showAllData仅重置最后一个表。 我尝试取消隐藏筛选的行,但未成功。 也许我应该遍历所有3个表?
Sub ClearFilter()
ActiveSheet.ShowAllData
End Sub
在ShowAllData
清除最后一张表中的过滤器后,您可以取消隐藏其余隐藏行以显示所有数据,如下所示...
Sub ClearFilter()
On Error Resume Next
ActiveSheet.ShowAllData
ActiveSheet.Rows.Hidden = False
End Sub
我认为这是您要寻找的:
IF Sheets("Sheet1").ListObjects("Table1").AutoFilter.FilterMode = True THEN Sheets("Sheet1").ListObjects("Table1").AutoFilter.ShowAllData
替换工作表名称和表名称。 您需要使用IF
语句来检查是否设置了过滤器,否则当您尝试清除不存在的过滤器时会出错。
有关更多信息,请参见: 当工作表具有过滤器时 , 为什么ActiveSheet.FilterMode返回False?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.