VBAを使用して配列内にデータがあるかどうかを判定する方法

VBAのInStr関数を使用して、データが配列内にあるかどうかを判断できます。この関数は、指定された部分文字列が文字列内にあるかどうかを検索するために使用できます。

配列内にデータがあるかどうかを判別するために InStr 関数を使用する方法を示すサンプルコードは次のとおりです。

Sub CheckDataInArray()
    Dim myArray() As Variant
    Dim searchData As Variant
    Dim i As Long
    
    ' 初始化数组
    myArray = Array("Apple", "Banana", "Orange", "Grapes")
    
    ' 要搜索的数据
    searchData = "Banana"
    
    ' 遍历数组,判断是否存在搜索数据
    For i = LBound(myArray) To UBound(myArray)
        If InStr(1, myArray(i), searchData) > 0 Then
            MsgBox "数据存在于数组中"
            Exit Sub
        End If
    Next i
    
    MsgBox "数据不存在于数组中"
End Sub

配列myArrayの初期化を行い、検査するデータをsearchDataに代入します。構文Forを使ってmyArrayすべてのデータに対して、InStr関数でsearchDataが含まれるかどうかを検査します。もしsearchDataがデータ中に含まれていれば、「データが存在します」というメッセージボックスを表示し、searchDataが含まれていなければ「データは存在しません」というメッセージボックスを表示します。

InStr 関数は大文字小文字を区別します。大文字小文字を区別しない検索を実行する場合は、配列要素と検索データをどちらも同じ大文字小文字に変換する必要があります。

bannerAds