Removes duplicate items from an array.
array = Input array
returnArray = array to return values to
Function UniqueArray( array As Variant , returnArray As Variant ) As Integer
Dim xlist List As Variant
Dim i As Integer
'*** Make sure arrays are passed to avoid some errors
If Not Isarray( returnArray ) Or Not Isarray( array ) Then
UniqueArray = False
Exit Function
End If
i = 0
'*** Use list to remove duplicates as list tags have to be unique
Forall e In array
xlist(e) = e
End Forall
'*** Build a new array containing unique items
Forall t In xlist
Redim Preserve returnArray(i)
returnArray(i) = t
i = i + 1
End Forall
UniqueArray = True
End Function
This was first published in November 2000