Io ho capito qual'è il problema... !
Hai il valore della variabile che è NULL ed ovviamente non è supportato dal Vartype String.
Quindi modifica questa così:
If EsisteFile(Foto & vbNullstring) Then
Ovviamente funziona anche il tuo codice
If Len(Dir(Foto & vbNullstring))>0 Then