Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - NEMESIS_69

#1
Programación Visual Basic / validar rut....
13 Diciembre 2006, 16:48 PM
aca les va un codigo chiko de validacion de rut; pa los que cachan no mas como implementarlos...
Ojala me puedan ayudar a mejorarlo ya que lo que quiero lograr es anotar el rut de cualquier forma y al validarlo me lo muestre en un texbox nuevo con caracteres en el formato de salid xx.xxx.xxx-x a ver que sale ....

ACA EL CODIGO:

Public Class Form1


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'MENSAJE CUANDO NO SE ESCRIBE RUT

If (TextBox1.Text = "") And (TextBox2.Text = "") Then
MsgBox("No ha ingresado un R.U.T.", vbCritical, "Atención")
TextBox1.Text = ""
End If

'VALIDAR RUT
Dim i As Integer
Dim X As Integer
Dim total As Integer
Dim totaltotal As Integer
Dim por As Integer
Dim rut As Integer
Dim guion As Integer
Dim nrut As Integer
Dim posicion As Integer
Dim valor As Integer
Dim verdad As Boolean

i = 1
total = 0
totaltotal = 0

rut = Len(TextBox1.Text)
posicion = rut
por = 2


If Val(TextBox1.Text) = 15662171 And Val(TextBox2.Text) = 4 Then
MsgBox("ESTE ES EL RUT DEL JAVIER PIZARRO", vbCritical, "ATENCION")
End If

'RECORRER EL R.U.T.
For i = 1 To rut

If por = 8 Then
por = 2
End If

total = por * Val(Mid(TextBox1.Text, posicion, 1))
posicion = posicion - 1
totaltotal = totaltotal + total
por = por + 1
Next

valor = totaltotal Mod 11
guion = Int(11 - valor)
If guion = Val(Mid(TextBox2.Text, 1, 1)) Or guion = 10 And (Mid(TextBox2.Text, 1, 1)) = "k" Or guion = 11 And (Mid(TextBox2.Text, 1, 1)) = "0" Or guion = 10 And (Mid(TextBox2.Text, 1, 1)) = "K" Then
verdad = True
If MsgBox("Rut valido ¿Desea Ingresar otro?", vbQuestion + vbYesNo, "Ingresar Otro") = vbYes Then
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
Else
End
End If
Else
MsgBox(" El R.U.T. ingresado NO es Valido", vbCritical, "Error.....")
verdad = False
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End If
End Sub

Private Sub Button1_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button1.MouseMove
Label3.Text = "Click aquí para validar el R.U.T."
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End Sub
Private Sub Label2_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label2.MouseMove
Label3.Text = ""
End Sub
Private Sub TextBox1_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseMove
Label1.Text = "Ingrese aquí su R.U.T."
If Len(TextBox1.Text) > 0 And Len(TextBox1.Text) < 6 Then
MsgBox(" Ingrese minimo 6 digitos", vbCritical, "Error.....")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End If
End Sub

Private Sub Form1_MouseMove(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove
Label3.Text = ""
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
End
End Sub

Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
Dim keyAscii As Integer
Dim largo As Integer
If (KeyAscii < 48 Or KeyAscii > 57) And KeyAscii <> 13 Then
KeyAscii = 0
End If

If KeyAscii = 13 Then
TextBox2.Focus()
largo = Len(TextBox1.Text)
If largo < 7 Then
MsgBox("Ingrese minimo 7", vbCritical, "Alerta")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End If
End If
largo = Len(TextBox1.Text)
If largo > 9 Then
MsgBox("Ingrese maximos 9 digitos", vbCritical, "Alerta")
End If
End Sub

Private Sub TextBox2_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress
Dim corto As Integer
Dim KeyAscii As Integer
If (KeyAscii < 48) Or (KeyAscii > 57) And (KeyAscii <> 75) And (KeyAscii <> 107) Then
KeyAscii = 0
End If
corto = Len(TextBox2.Text)
If corto > 1 Then
MsgBox("ingrese solo un caracter (0,1 ,2 , 3, 4, 5, 6, 7, 8, 9, k)", vbCritical, "Alerta")
TextBox1.Text = ""
TextBox2.Text = ""
TextBox1.Focus()
End If
End Sub
End Class