vba 数组字符串
vbaarr数组中存了字符串,brr数组中也是字符串,brr中的字符串,arr中都有,现在我要把arr中和brr相同的字符串清除掉,代码怎么写,请求各位大神指教,不甚感激...
vba arr数组中存了字符串,brr数组中也是字符串,brr中的字符串,arr中都有,现在我要把arr中和brr相同的字符串清除掉,代码怎么写,请求各位大神指教,不甚感激
展开
1个回答
展开全部
楼主,这个应该调用什么API能很快搞定,不过我一般用VBA主要处理数据啥的,我大概试了下,用下面的方法也可行的。
Sub test()
Dim arr() As String, brr() As String
Dim crr() As String
Dim i As Long, k As Long
'随便定义了2个数据,按楼主说的,brr的所有元素在arr都存在
arr = Split("A,B,C,D,E,F,G", ",")
brr = Split("B,D,G", ",")
'用crr来存取 arr-brr的元素,crr的大小如下
ReDim crr(UBound(arr) - UBound(brr) - 1)
'开整,遍历arr,把每个brr中没有的放到crr中就好了
For i = 0 To UBound(arr)
If UBound(Filter(brr, arr(i))) <> 0 Then
crr(k) = arr(i)
k = k + 1
End If
Next i
End Sub
我试过了,可以滴。方法思路就是这个啦
Sub test()
Dim arr() As String, brr() As String
Dim crr() As String
Dim i As Long, k As Long
'随便定义了2个数据,按楼主说的,brr的所有元素在arr都存在
arr = Split("A,B,C,D,E,F,G", ",")
brr = Split("B,D,G", ",")
'用crr来存取 arr-brr的元素,crr的大小如下
ReDim crr(UBound(arr) - UBound(brr) - 1)
'开整,遍历arr,把每个brr中没有的放到crr中就好了
For i = 0 To UBound(arr)
If UBound(Filter(brr, arr(i))) <> 0 Then
crr(k) = arr(i)
k = k + 1
End If
Next i
End Sub
我试过了,可以滴。方法思路就是这个啦
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |