Access - Código Validar Rut en Chile y ...

 
Vista:

Código Validar Rut en Chile y ...

Publicado por Waldo Christian (12 intervenciones) el 20/08/2005 23:16:08
Como validar rut desde un formulario y mantener el foco del cuadro de texto hasta que este sea correcto.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Validación de RUT desde un formulario y mantener el foco del cuadro de texto hasta que sea correcto

Publicado por Alejandro (4142 intervenciones) el 07/06/2023 00:32:25
1. Agrega un cuadro de texto en tu formulario para ingresar el RUT y un botón para realizar la validación.
2. Crea una función en VBA para validar el RUT. Puedes utilizar el siguiente código como ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Function ValidarRUT(rut As String) As Boolean
    Dim rutNumerico As Long
    Dim rutDV As String
    Dim factor As Integer
    Dim suma As Long
    Dim dvCalculado As String
 
    ' Eliminar puntos y guión del RUT
    rut = Replace(rut, ".", "")
    rut = Replace(rut, "-", "")
 
    ' Obtener número y dígito verificador
    rutNumerico = Val(Left(rut, Len(rut) - 1))
    rutDV = Right(rut, 1)
 
    ' Calcular dígito verificador
    suma = 0
    factor = 2
 
    Do While rutNumerico > 0
        suma = suma + (rutNumerico Mod 10) * factor
        rutNumerico = rutNumerico \ 10
        factor = factor + 1
        If factor > 7 Then factor = 2
    Loop
 
    dvCalculado = CStr(11 - (suma Mod 11))
 
    If dvCalculado = "10" Then dvCalculado = "K"
    If dvCalculado = "11" Then dvCalculado = "0"
 
    ' Comparar dígito verificador calculado con el ingresado
    ValidarRUT = (UCase(dvCalculado) = UCase(rutDV))
End Function

3. En el evento Click del botón de validación, agrega el siguiente código:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub btnValidar_Click()
    Dim rut As String
 
    ' Obtener el valor ingresado en el cuadro de texto
    rut = Me.txtRUT.Value
 
    ' Validar el RUT utilizando la función ValidarRUT
    If ValidarRUT(rut) Then
        ' RUT válido, realizar acciones necesarias
        MsgBox "RUT válido"
    Else
        ' RUT inválido, mostrar mensaje de error y mantener el foco en el cuadro de texto
        MsgBox "RUT inválido"
        Me.txtRUT.SetFocus
    End If
End Sub

Con esta solución, el foco permanecerá en el cuadro de texto hasta que se ingrese un RUT válido. Si el RUT es inválido, se mostrará un mensaje de error y el foco se mantendrá en el cuadro de texto para corregir el valor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar