指定した文字が配列内存在しているかどうか判定したい
配列データと指定文字が一致する場合のみ処理するなど、配列内の中身のチェックをしたい場合があります。
パーツ化することで、今後の開発の時短に繋がります。
指定した文字が配列内存在しているかどうか判定するサンプルコード
'■2次元配列内に指定文字strが存在していればTrue/存在しなければFalse/sColは検索する列位置
Public Function Call_arrCheck2D(str As String, arr As Variant, sCol As Long) As Boolean
Dim i As Long
For i = LBound(arr, 1) To UBound(arr, 1)
If str = arr(i, sCol) Then Call_arrCheck2D = True: Exit Function
Next
Call_arrCheck2D = False
End Function
実際の使い方
Public Sub sample()
Dim arr(4, 1) As Variant
arr(0, 0) = "A": arr(0, 1) = "あ":
arr(1, 0) = "B": arr(1, 1) = "い":
arr(2, 0) = "C": arr(2, 1) = "う":
arr(3, 0) = "D": arr(3, 1) = "え":
arr(4, 0) = "E": arr(4, 1) = "お":
Debug.Print Call_arrCheck2D("あ", arr, 0) 'False
Debug.Print Call_arrCheck2D("あ", arr, 1) 'True
Debug.Print Call_arrCheck2D("A", arr, 0) 'True
Debug.Print Call_arrCheck2D("A", arr, 1) 'False
Debug.Print Call_arrCheck2D("xxx", arr, 0) 'False
Debug.Print Call_arrCheck2D("xxx", arr, 1) 'False
End Sub




コメント