我希望能够显示已应用于数据的过滤器列表。
我找到了一个解决方案,从评论中可以看出https://superuser.com/questions/436667/show-excel-column-filter-information-in-cells
我复制了这个功能:
Function CheckFilters(r As Range) As String
Set AWS = ActiveSheet
fstate = ""
If AWS.FilterMode Then
c = AWS.AutoFilter.Filters.Count
'go through each column and check for filters
For i = 1 To c Step 1
If AWS.AutoFilter.Filters(i).On Then
fstate = fstate & r(i).Value & ", "
End If
Next i
'removes the last comma
fstate = Left(fstate, Len(fstate) - 2)
Else
fstate = "NO ACTIVE FILTERS"
End If
CheckFilters = fstate
End Function
进入模块并将以下公式复制到我的电子表格中的单元格中:
=CheckFilters(A3:U3) & LEFT(SUBTOTAL(9,A5:A200),0)
具有公式的单元格显示 #Value 错误,当我尝试过滤标题时,我收到“变量未定义”错误,并在VBA窗口中突出显示AWS =
我尝试删除AWS元素并通过该函数使用ActiveSheet
但我接收到另一个“未定义变量”错误,并突出显示fstate
。
我不确定将'fstate'定义为什么。
我会回到原帖,但我没有足够的代表添加评论以联系发布解决方案的成员。
感谢任何帮助!
编辑 - 原始问题已解决但我现在在.FilterMode
行中突出显示了“编译错误:未找到方法或数据成员”消息If AWS.FilterMode Then
...
立即寻求支持以修复此部分:)
谢谢。