gpt4 book ai didi

excel - 使用数组过滤表

转载 作者:行者123 更新时间:2023-12-04 22:24:52 25 4
gpt4 key购买 nike

我正在尝试使用数组过滤表。

问题可能在于我如何设置阵列。代码运行,但不过滤表。

Sub DataQuery()

Dim wordDict As Object: Set wordDict = CreateObject("Scripting.Dictionary")
Dim i, x As Integer
Dim searchCol, searchText, demoText As String
Dim searchVals() As String

searchCol = "I"
i = 3

With Sheets("Query Sheet")
searchText = Range(searchCol & i).Value
searchVals() = Split(searchText, "|")
For x = LBound(searchVals) To UBound(searchVals)

Sheets("Total_Data").Range("A1").AutoFilter _
Field:=2, _
Criteria1:=searchVals(x), _
Operator:=xlFilterValues
Next x
End With
End Sub

为了提供一些上下文,我有一个单元格,其中包含以下文本:11/5/2019|11/6/2019|11/7/2019。

我试图在您看到 Split(…) 的地方用竖线分隔符将文本分开。代码,然后在循环中使用这些值中的每一个来将多个过滤器添加到表的单个列中。

我尝试使用脚本字典重命名我的数组,将它们声明为变体。

最佳答案

显然,我在数组方面有点愚蠢。我对您看到 AutoFilter... 部分的代码做了一点改动。

Sub DataQuery()

Dim i, x As Integer
Dim searchCol, searchText, demoText As String
Dim searchVals

searchCol = "I"
i = 3

With Sheets("Query Sheet")
searchText = .Range(searchCol & i).Value
MsgBox searchText
searchVals = Split(searchText, "|")
Sheets("Total_Data").Range("A1").AutoFilter _
Field:=2, _
Criteria1:=searchVals, _
Operator:=xlFilterValues
End With
End Sub

将其更改为不按 searchVals(x) 过滤,而是立即使用整个数组来解决问题。

感谢你的帮助!

关于excel - 使用数组过滤表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58883439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com