Ingresar el rut en un textbox y verificar en otro

Tengo un formulario en el cual ingreso datos como nombre apellido etc..
Pero necesito ingresar el rut y que aparezca el dígito verificador (chile), ademas necesito que el numero de registro se incremente en 1 automáticamente cada vez que in greso un dato nuevo

2 Respuestas

Respuesta
1
Solo quería saber si conoces la fórmula para calcular el dígito verificador, ya que solo así podrás calcular este proceso.
Avisame si no lo sabes
Hola Experto...
Esta es la fórmula
Public Function dvrut(Rut)
    ' lo unico que no acepta son letras
    Rut = Replace("0000" & Rut, ".", "", 1)
    If InStr(1, Rut, "-") > 0 Then Rut = Left(Rut, InStr(1, Rut, "-") - 1)
    Rut = Right(Rut, 8)
    suma = 0
    For i = 1 To 8
        suma = suma + Val(Mid(Rut, i, 1)) * Val(Mid("32765432", i, 1))
    Next i
    Dv = 11 - (suma Mod 11)
    If Dv = 10 Then Dv = "K"
    If Dv = 11 Then Dv = 0
    dvrut = Dv
End Function
cuando digito 12167403 en la celda "A1"
en la celda "B1" agrego la formula =dvrut(A1)
Y el resultado es 3
Pero no se como lo puedo aplicar en un userform
Primero que nada disculpa por la demora en responder, pero había estado con poco tiempo.
La idea es crear un formulario y poner dos textbox en su interior, luego ingresas este código en el formulario y lo corres
¿Cuentame cómo teva?
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
    Dim i As Integer
    largo = Len(TextBox1)
    suma = 0
    For i = 1 To 8
        If largo = 8 Then
            Rut = Right(TextBox1, 8)
            suma = suma + Val(Mid(Rut, i, 1)) * Val(Mid("32765432", i, 1))
       Else
            Rut = Right(TextBox1, 7)
            suma = suma + Val(Mid(Rut, i, 1)) * Val(Mid("2765432", i, 1))
        End If
    Next i
    Dv = 11 - (suma Mod 11)
    If Dv = 10 Then Dv = "K"
    If Dv = 11 Then Dv = 0
    TextBox2 = Dv
    CommandButton1.SetFocus
End Sub
Respuesta

Wow, Por si alguien le sirve Funciona a la Perfección.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas