我不是 VBA 专家,但我需要确定数组中的所有元素是否相同。是否有一个函数可以用来检查所有元素是否相同?
问问题
11198 次
2 回答
8
这与KopBuH 的答案基本相同,但我更喜欢这种循环/布尔赋值的方法......
Function ElementsSame(arr As Variant) As Boolean
Dim l As Long
ElementsSame = True
For l = 1 To UBound(arr)
If arr(0) <> arr(l) Then
ElementsSame = False
Exit For
End If
Next l
End Function
于 2012-08-15T13:37:10.770 回答
3
您可以使用此函数检查任何类型的变量的任何数组。如果此函数返回 TRUE,则表示数组中的所有元素都相等。
Function IsAllElementsTheSame(arr As Variant) As Boolean
Dim buf As Variant
buf = arr(0)
Dim i As Integer
i = 0
Do While (buf = arr(i) And i < UBound(arr))
i = i + 1
Loop
IsAllElementsTheSame = False
If i = UBound(arr) And buf = arr(UBound(arr)) Then
IsAllElementsTheSame = True
End If
End Function
于 2012-08-15T12:25:18.163 回答