wedd,
I didn't put a NULL check in the function for sPhone. My understanding is that you would do that before calling the ValidatePhone routine.
Put this in the function for completeness.
It goes before the line With CreateObject
and after On Error GoTo ValidatePhone_Error
[VBA]If Len(sPhone & "") = 0 Then
ValidatePhone = "Fail"
Exit Function
End If[/VBA]