溫馨提示×

vba數組怎么刪除某個元素

vba
小億
658
2023-11-23 21:00:17
欄目: 編程語言

要刪除一個VBA數組中的特定元素,您可以使用以下方法之一:

  1. 使用ReDim語句重新定義數組的大小,并將要刪除的元素跳過。這將創建一個新的數組,不包含要刪除的元素。以下是一個示例代碼:
Sub DeleteElementFromArray()
    Dim arr() As Variant
    Dim i As Integer
    Dim elementToDelete As Variant
    Dim newArr() As Variant
    
    ' 初始化數組
    arr = Array("Apple", "Banana", "Orange", "Mango")
    
    ' 要刪除的元素
    elementToDelete = "Banana"
    
    ' 遍歷數組,創建新的數組,跳過要刪除的元素
    ReDim newArr(LBound(arr) To UBound(arr) - 1)
    For i = LBound(arr) To UBound(arr)
        If arr(i) <> elementToDelete Then
            newArr(i - IIf(i > LBound(arr), 1, 0)) = arr(i)
        End If
    Next i
    
    ' 輸出結果
    For i = LBound(newArr) To UBound(newArr)
        Debug.Print newArr(i)
    Next i
End Sub
  1. 使用Filter函數,該函數返回一個新數組,其中包含不包含要刪除元素的元素。以下是一個示例代碼:
Sub DeleteElementFromArray()
    Dim arr() As Variant
    Dim elementToDelete As Variant
    Dim newArr() As Variant
    
    ' 初始化數組
    arr = Array("Apple", "Banana", "Orange", "Mango")
    
    ' 要刪除的元素
    elementToDelete = "Banana"
    
    ' 使用Filter函數創建新的數組,不包含要刪除的元素
    newArr = Filter(arr, elementToDelete, False)
    
    ' 輸出結果
    Dim i As Integer
    For i = LBound(newArr) To UBound(newArr)
        Debug.Print newArr(i)
    Next i
End Sub

無論使用哪種方法,都可以刪除VBA數組中的特定元素。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女