我正在使用数据库,正在根据电子表格中的其他数据在新列中输入数据。
在将数据输入到我的一列中时,我相信我不小心选择了一个过滤器(或多个过滤器组合),这意味着缺少了用于输入的大量合格数据样本。但是,在纠正这一问题时,未知的过滤器实际上产生了明显更好的结果,所以我想知道是否有可能弄清楚在最初输入数据时启用了哪些过滤器?
我有一个带有初始条目的电子表格版本(但清除了所有过滤器)和一个已正确完成的电子表格版本。
答案 0 :(得分:0)
这将创建一个名为currentFilterSettings的数组,其中第一个维度中的每个元素代表一列,过滤器设置保存在第二个维度中。
您可能希望在最后一行可用的地方休息一下,然后使用本地窗口查看结构。
Sub GetCurrentFilterSettings()
Dim ws As Worksheet
Dim currentFilterSettings()
Dim i As Long
Set ws = ActiveSheet
With ws.AutoFilter.Filters
ReDim currentFilterSettings(1 To .Count, 1 To 3)
For i = 1 To .Count
With .Item(i)
If .On Then
currentFilterSettings(i, 1) = .Criteria1
If .Operator Then
currentFilterSettings(i, 2) = .Operator
If .Operator = xlAnd Or .Operator = xlOr Then
currentFilterSettings(i, 3) = .Criteria2
End If
End If
End If
End With
Next i
End With
End Sub