Access - máscara

 
Vista:

máscara

Publicado por Vane (5 intervenciones) el 04/06/2007 10:05:57
buenos dias,
alguien me podria decir como es la mascara para los CIF ó NIF, porfa!!!
GRACIAS
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:máscara

Publicado por GLORIA (3 intervenciones) el 04/06/2007 10:14:23
Hola,
Cuando yo he hecho en la tabla los NIF, no les he puesto máscara, simplemente en forma Texto para introducir la letra.
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

RE:máscara

Publicado por Enrique (1299 intervenciones) el 04/06/2007 18:40:19
Hola Vane:
Ya sabes que en España, el NIF de una persona física empieza por 8 dígitos y una letra al final y el CIF de una Sociedad es al contrario, una Letra y 8 Dígitos, por lo que no vale la misma máscara para ambos, pero se puede hacer la selección por código. Necesitas los siguientes controles:

2 Botones de opción: Opción1 y Opción2 (Independientes, sin meter en un grupo de opciones y sin origen del control)
1 Etiqueta: Etiqueta1 (vacia, sin caption, le pones un espacio en blanco)
1 Cuadro de Texto: Texto1

y estos Procedimientos de Evento en la Ventana de VBA:
Private Sub Form_Load()
Opción1.Value = False: Opción2.Value = False
End Sub

Private Sub Opción1_Click()
Opción1.Value = True: Opción2.Value = False
Etiqueta1.Caption = "Introduzca N.I.F. Persona Física (8 dígitos y una letra):"
Texto1.SetFocus
End Sub

Private Sub Opción2_Click()
Opción2.Value = True: Opción1.Value = False
Etiqueta1.Caption = "Introduzca C.I.F. Sociedad (1 letra y ocho dígitos):"
Texto1.SetFocus
End Sub

Private Sub Texto1_GotFocus()
Texto1 = Null
Texto1.SelStart = 0

If Opción1.Value = False And Opción2.Value = False Then
Etiqueta1.Caption = "Seleccione Personal Física o Sociedad"
End If

If Opción1.Value = True Then
Texto1.InputMask = "90000000>L;0;_" 'Carga la máscara de Persona Física
Else
Texto1.InputMask = "L>90000000;0" 'Carga la máscara de Sociedad
End If
End Sub

El Campo Texto1 debe tener como Origen del Control un campo tipo TEXTO en una Tabla, pero sin máscara en la Tabla para que admita ambos.

Saludos
Enrique
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

RE:máscara

Publicado por Juanma (1 intervención) el 18/06/2014 20:05:29
Muchísimas gracias Enrique, 7 años después y con Access 2013 tu código me ha funcionado a la perfección. He adaptado las máscaras para que incluyan un guión y el carácter punto como separador (he tenido que escapar dichos caracteres con dos comillas dobles). Gracias crack. Pongo aquí mis máscaras algo más sofisticadas por si a alguno le sirve.

If Opcion1.Value = True Then
Texto1.InputMask = "90000000>L;0;_" 'Carga la máscara de Persona Física
Texto1.InputMask = ">A0"".""000"".""000-L;0;#"
Else
'Texto1.InputMask = "L>90000000;0" 'Carga la máscara de Sociedad
Texto1.InputMask = ">L-00"".""000"".""000;0;#"
End If
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