hola, no tengo tiempo para hacerte un ejemplo, te dejo otro que use en su momento para algo parecido y te puedas guiar:
Dim sCadena As String, sCadenaBuscar As String
Dim I As Integer, Posicion As Integer, Inicio As Integer
sCadena = "hola como estas, yo estoy bien, adios espero que tu igual, adios!! hooo..."
sCadenaBuscar = "adios"
Inicio = 1
For I = 0 To Len(sCadena)
Posicion = InStr(Inicio, sCadena, sCadenaBuscar)
If Posicion <> 0 Then
Inicio = Posicion + 1
Else
Exit For
End If
Next
MsgBox "se encontraron en la cadena orignal '" & I & "' coincidencia (s) con la cadena '" & sCadenaBuscar & "'"
Debes convertir eso en función y que te devuelva un array con los nombres que requieres, en lugar del numero de coincidencias.
espero te sirva de algo,