Private Function ArraySearch(srcArray As Variant, srcSearchString As String) As Integer 'Returns the index of the matching array slice. Dim s As String, x As Integer, y As Integer, z As Integer On Error GoTo Fail SortArray srcArray For x = 1 To Len(srcSearchString) s = Mid(srcSearchString, 1, x) Do Until Mid(srcArray(z), 1, x) = s z = z + 1: Loop Next x ArraySearch = z Fail: End Function Private Function SortArray(ByRef srcArray As Variant) Dim Sorted As Boolean, x As Integer, y As String Sorted = False Do While Not Sorted Sorted = True For x = 0 To UBound(srcArray) - 1 If srcArray(x) > srcArray(x + 1) Then y = srcArray(x + 1) srcArray(x + 1) = srcArray(x) srcArray(x) = y Sorted = False End If Next x Loop End Function