by Arthur Chaparyan3 (2 Submissions)
Category: String Manipulation
Compatability: Visual Basic 3.0
Difficulty: Unknown Difficulty
Date Added: Wed 3rd February 2021
Rating: (8 Votes)
I've been looking around for this code and no one could provide it. So finally I wrote it. It checks for duplicates in an array and returns true if there are any.
Inputs
The only input required is the array
Assumes
You could use this code to generate lottery numbers or check if more than one record of the same name is present...
Code Returns
Returns True if there are any duplicates and false otherwise
Side Effects
If used with LARGE (and I mean LARGE as in arrays with hundreds or thousands of items) it will slow down. USE WITH ONE DIMENSIONAL ARRAYS
Public Function AnyDup(NumList As Variant) As Boolean
Dim a As Long, b As Long
'Start the first loop
For a = LBound(NumList) To UBound(NumList)
'Start the second loop (thanks for the suggestions everyone)
For b = a + 1 To UBound(NumList)
'Check if the values are the same
'if they're equal, then we found a duplicate
'tell the user and end the function
If NumList(a) = NumList(b) Then AnyDup = True: Exit Function
Next
Next
End Function