如何使用vba的filter功能?

VBA FILTER 函数列在 VBA 函数表类别中。当您在 VBA 代码中使用它时,它可以根据您指定为子集的字符串从字符串数组中返回字符串。简单来说,它可以指定一个字符串,然后它将搜索该字符串属于主字符串的所有值。

句法

过滤器(ArraySource,匹配,[包含],[比较])

争论

  • SourceArray :包含要过滤的字符串的数组。
  • Match :您要在 SourceArray 中过滤的字符串。
  • [Ininclude] :这是一个布尔值,用于定义要过滤的天气值是否包含匹配项,或者不包含[这是一个可选参数,如果省略,VBA 默认为 TRUE]。
  • [Compare] :一个字符串值,用于定义过滤数组时要执行的比较[这是一个可选参数,如果省略,VBA 默认采用 vbBinaryCompare]。
    • vbBinaryCompare:用于二进制比较。
    • vbTextCompare:用于文本比较。
    • vbDatabaseCompare:用于数据库比较。

例子

要实际了解如何使用 VBA FILTER 函数,您需要查看下面的示例,我们在其中编写了使用该函数的 vba 代码:

example-vba-filter-function
 Sub example_FILTER() Dim nameAry As Variant Dim myAry(0 To 4) As String myAry(0) = Range("A1").Value myAry(1) = Range("A2").Value myAry(2) = Range("A3").Value myAry(3) = Range("A4").Value myAry(4) = Range("A5").Value nameAry = Filter(myAry, "Sh") End Sub

在上面的代码中,我们使用 FILTER 从数组中获取值(myAry 具有来自我们定义的单元格的值),其中包含“Sh”,现在“nameAry”包含“Jay Sh”和“Peter” Sh’ 因为两者都包含“Sh”。

评论

  • 如果您提供的源数组为 NULL,VBA 将返回错误。
  • 过滤器返回的数组始终是一维、从零开始的数组。

添加评论

您的邮箱地址不会被公开。 必填项已用 * 标注