|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
- Sub FilterExactly()
- Const myMarker As String = "!"
- Const myDelimiter As String = ","
- Dim myArray() As Variant
- Dim mySearchArray As Variant
- Dim myFilteredArray As Variant
-
- '创建数组
- myArray = Array(1, 2, 3, 10)
- '预先在数组中筛选包含1的元素
- myFilteredArray = Filter(myArray, 1)
-
- If UBound(myFilteredArray) > -1 Then
- '标记每个找到的元素的开始和结束
- 'myMarker和myDelimiter必须是字符
- '且该字符不会出现在数组的任何元素中!
- mySearchArray = Split(myMarker & Join(myFilteredArray, myMarker & myDelimiter & myMarker) & myMarker, myDelimiter)
- '下面筛选修改后的数组
- myFilteredArray = Filter(mySearchArray, myMarker & "1" & myMarker)
- '从结果中移除标记
- myFilteredArray = Split(Replace(Join(myFilteredArray, myDelimiter), myMarker, ""), myDelimiter)
- End If
- '显示结果
- MsgBox "筛选数组(" & Join(myArray, ", ") & ") 以获得含有1的完全匹配的元素将返回:" & vbCr & Join(myFilteredArray, vbCr)
- End Sub
复制代码
|
|