VBA 删除数组某元素的方法多种

Sub test_arr3()

arr1 = Array(1, 2, 3, 999, 1, 3, 5)

For Each I In arr1
   If I = "999" Then
      I = ""
   Else
      Debug.Print I
   
   End If
Next

dengbu.Print
End Sub

用if  和 filter方法的
http://club.excelhome.net/thread-1238763-1-1.html
 

扫描二维码关注公众号,回复: 8648598 查看本文章

看来数组,用 filter 很容易生成新数组啊,并不是那么难啊


Sub test_arr4()
arr1 = Array(1, 2, 3, 999, 1, 3, 5)
arr2 = Filter(arr1, 999, False)

For Each x In arr1
    Debug.Print x;
Next
Debug.Print

For Each y In arr2
    Debug.Print y;
Next
Debug.Print


End Sub


Sub test_arr6()
Dim arr2()
arr1 = Array(1, 2, 3, 999, 1, 2, 3)

'有个小问题,index为0的元素为空
J = 1
For I = LBound(arr1) To UBound(arr1)
    If Not arr1(I) = 999 Then
       ReDim Preserve arr2(J)
       arr2(J) = arr1(I)
        J = J + 1
    End If
Next

For Each I In arr2
   Debug.Print I
Next

End Sub
发布了370 篇原创文章 · 获赞 45 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/xuemanqianshan/article/details/103912635
vba
今日推荐