溫馨提示×

vba怎么判斷一個數(shù)據(jù)是否存在數(shù)組中

vba
小億
1376
2023-11-23 16:37:30
欄目: 編程語言

要判斷一個數(shù)據(jù)是否存在于數(shù)組中,可以使用VBA中的InStr函數(shù)。該函數(shù)可以用來查找字符串中是否包含指定的子字符串。

以下是一個示例代碼,演示了如何使用InStr函數(shù)來判斷一個數(shù)據(jù)是否存在于數(shù)組中:

Sub CheckDataInArray()
    Dim myArray() As Variant
    Dim searchData As Variant
    Dim i As Long
    
    ' 初始化數(shù)組
    myArray = Array("Apple", "Banana", "Orange", "Grapes")
    
    ' 要搜索的數(shù)據(jù)
    searchData = "Banana"
    
    ' 遍歷數(shù)組,判斷是否存在搜索數(shù)據(jù)
    For i = LBound(myArray) To UBound(myArray)
        If InStr(1, myArray(i), searchData) > 0 Then
            MsgBox "數(shù)據(jù)存在于數(shù)組中"
            Exit Sub
        End If
    Next i
    
    MsgBox "數(shù)據(jù)不存在于數(shù)組中"
End Sub

在上述代碼中,首先定義了一個名為myArray的數(shù)組,并初始化了一些數(shù)據(jù)。然后定義了一個要搜索的數(shù)據(jù)searchData。接下來使用For循環(huán)遍歷數(shù)組,通過InStr函數(shù)判斷每個數(shù)組元素是否包含搜索數(shù)據(jù)。如果找到了匹配的數(shù)據(jù),則會彈出一個消息框顯示"數(shù)據(jù)存在于數(shù)組中";如果遍歷完整個數(shù)組沒有找到匹配的數(shù)據(jù),則會彈出一個消息框顯示"數(shù)據(jù)不存在于數(shù)組中"。

需要注意的是,InStr函數(shù)是區(qū)分大小寫的。如果需要進(jìn)行大小寫不敏感的搜索,可以將數(shù)組元素和搜索數(shù)據(jù)都轉(zhuǎn)換為統(tǒng)一的大小寫。

0