Solo letras, regla de validación

Tengo la siguiente función colocada como regla de validación en un cuadro de texto APELLIDOS, para avisarle al usuario que sólo puede escribir letras en ese campo:
Function IsAlpha(mystring As String)
Dim LoopVar As Integer
Dim SingleChar As String
LoopVar = 1
If IsNull(mystring) Then
IsAlpha = True
Exit Function
End If
For LoopVar = 1 To Len(mystring)
SingleChar = UCase(Mid$(mystring, LoopVar, 1))
If SingleChar < "A" Or SingleChar > "Z" Then
IsAlpha = False
Exit Function
End If
Next LoopVar
IsAlpha = True
End Function
El problema que tengo es que en dicho campo APELLIDOS en donde hay más de un apellido, marca que no cumple la regla de validación. Por ejemplo si los apellidos son "PEREZ GALDOS" no se cumple la regla de validación, si lo escribo "PEREZGALDOS" entonces si cumple la regla. La pregunta: cómo puedo hacer para que la función revise los apellidos por separado (2 ó más o los que sean), es decir que yo escriba "PERES GALDOS" y cumpla la regla pero si escribo "PEREZ GAL;OZ" (por ejemplo al incluir una no letra) no la cumpla.

1 respuesta

Respuesta
1
Parece fácil. Sustituye la línea del if por
if (siglechar < "A" or singlechar >"Z") and singlechar<>" " then
Así, cuando lea un espacio ya no cumple la condición del if y no asigna 'false'

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas