Code:Function EInstr(strBase As String, _ strSearch As String) On Error GoTo Cleanup '****************************************************************************** ' * 'Author: Adam Evanovich * 'Date: 9/17/2010 * 'Purpose: To count the number of occurances of one string inside of another. * ' * 'Arguments: * 'strBase > String in which to search for substrings * 'strSearch > Substring for which to count occurances * ' * '****************************************************************************** Dim oCount As Long 'INDICATES THE COUNT OF OCCURANCES Dim CurPos As Long 'INDICATES CURRENT STARTING POSITION OF SEARCH Dim lReached As Boolean 'INDICATES IF LAST strSearch POSITION IS 0 Dim strSearchPos As Long 'INDICATES STARTING POSITION OF NEXT OCCURANCE lReached = False CurPos = 1 'START SEARCH AT BEGINNING OF BASE STRING Do Until lReached = True strSearchPos = InStr(CurPos, strBase, strSearch) If strSearchPos = 0 Then lReached = True Else oCount = oCount + 1 End If CurPos = strSearchPos + Len(strSearch) Loop EInstr = oCount Cleanup: oCount = 0 CurPos = 0 strSearchPos = 0 End Function