Programación General > Visual Basic 6.0 e inferiores

 Valida RUT que envía DESBORDAMIENTO :( porfis?

(1/2) > >>

will_lover:
Buenas tardes, junto con saludarles, quisiera pedirles un poco de ayuda.
 Tengo el siguiente codigo, que funciona bastante bien, pero hay un punto en el que envía un DESBORDAMIENTO ... quien me puede ayudar a resolver esto porfis... se agradece.

Private Sub txtRut_Change()
    If txtRut.Text = "" Then
     txtDigito.Text = ""
    End If
    Dim Vari1, Vari2, Vari3 As Integer
    Vari3 = 2
    For I = 0 To Len(txtRut) - 1 ' en esta linea envía el DESBORDAMIENTO!.
     If Left(Right(txtRut, I + 1), 1) <> "." Then
      Vari1 = Vari1 + Left(Right(txtRut, I + 1), 1) * Vari3
      Vari2 = Vari1 Mod 11
      Select Case Vari2
       Case 0
        txtDigito.Text = "0"
       Case 1
        txtDigito.Text = "K"
       Case Else
        txtDigito.Text = 11 - Vari2
      End Select
      If Vari3 = 7 Then
       Vari3 = 2
      Else
       Vari3 = Vari3 + 1
      End If
     End If
    Next
End Sub

RHL:
Es porque el valor devuelto a tu variable I es demaciado grande cambia el tipo de dato de la variable I a un tipo long

will_lover:
OK... muchisimas gracias..
 pero te puedo molestar otra vez¿?¿'  sorry... pero mi experiencia programando no ha sido mucha..
 
mira  en esta linea : CAL1 = CAL1 + Left(Right(txtRut, I + 1), 1) * CAL3  me dice "Error 13' en tiempo de ejecución LOS TIPOS NO COINCIDEN-"  Y SI TE DAS CUENTA EN EL CODIGO QUE PEDI AYUDA ANTERIORMENTE... CAL1, CAL2, CAL3 SON DE TIPO INTEGER... QUE ESTA MAL AHI¿?¿
 
mUCHAS GRACIAS..
 ;)

RHL:
Es porque estas intentando sumar una valor integer ( tus variables ) y una variable de tipo cadena...
Si digamos que tienes una cadena de este tipo: "abcd123"
y quieres hacer una operacion aritmetica con el 2 que se encuentre en la cadena, tenes que usar la funcion CInt para
que lo pueda convertir a valor entero y podas hacer operaciones aritmeticas

will_lover:
aun no me funciona.. :(... jejejje pero gracias... lo seguiré intentando!. :D

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa