Visual Basic - Validacion de los CIF

Life is soft - evento anual de software empresarial
 
Vista:

Validacion de los CIF

Publicado por Elena (1 intervención) el 22/08/2000 00:00:00
Hola,
necesitaría si lo tiene alguien, el código que valida si un número de CIF es correcto.

Muchas gracias,
Elena
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

RE:Validacion de los CIF

Publicado por Javier Pérez (170 intervenciones) el 23/08/2000 00:00:00
Aquí tienes una rutina simple que te permitirá validar un NIF:

Public Function validar_NIF(ByVal dato As String) As Boolean

Const tabla = "TRWAGMYFPDXBNJZSQVHLCKE"

Dim error As Boolean
Dim numero As Long
Dim nif As String
Dim car As String, letra As String

error = False

nif = Trim(dato)

´ Obtenemos el caracter derecho del NIF
car = UCase$(Right$(nif, 1))
´ Aislamos el resto de caracteres
nif = Left$(nif, Len(nif) - 1)

If Not IsNumeric(nif) Then
´ Número de NIF incorrecto
error = True

Else
´ Obtenemos el valor del DNI y la letra que le corresponde
numero = CLng(nif)
letra = Mid$(tabla, numero Mod 23 + 1, 1)

If letra <> car Then
´ La letra obtenida es diferente de la proporcionada
error = True
End If
End If

validar_NIF = Not error

End Function

Esta rutina puede servirte como base; para mejorarla puedes hacer que compruebe primero si el caracter derecho es una letra o no o si se han introducido más caracteres de los permitidos. También podrías utilizar el algoritmo proporcionado para obtener la letra correspondiente y añadirla en caso de que no se haya dado, informando al usuario de esta acción.
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