To determine whether a String array contains a given item it seems that you can't avoid writing a loop. However, you can do it with just one line of code, using the new VB6 Join function:
' ARR is an array of string, SEARCH is the value to be searched
Found = InStr(1, vbNullChar & Join(arr, vbNullChar) & vbNullChar, _
vbNullChar & search & vbNullChar) > 0
Note that the above code assumes that no item in the array contains the Chr$(0) character.
There are several variations of the theme. For example you can check whether any item in the String array begins with the searched substring using this code:
Found = InStr(1, vbNullChar & Join(arr, vbNullChar) , vbNullChar & search) > 0
And you can check whether the searched substring appears anywhere in any element of the String array:
Found = InStr(1, Join(arr, vbNullChar) , search) > 0
If you have a hot tip and we publish it, we'll pay you. However, due to accounting overhead we no longer pay $10 for a single tip submission. You must accumulate 10 acceptable tips to receive payment. Be sure to include a clear explanation of what the technique does and why it's useful. If it includes code, limit it to 20 lines if possible.
Submit your tip here.