Access - Socorro.Letra de NIF

 
Vista:

Socorro.Letra de NIF

Publicado por foto700 (11 intervenciones) el 05/04/2006 19:56:07
Hola amigos: Vuelvo a enviar otra vez elmensaje a ver si por favor me ayuda alguien.
Hice una agenda en la que uno de los campos es el NIF. Quería escribir el número del DNI (sólo el número) en dicho campo del formulario, y en otro campo o al final del mismo, que me pusiera automáticamente la letra. La fórmula para calcular la letra es:
=[NIF]-(Ent([NIF]/23))*23

[NIF] es el campo que contiene el número del DNI. Esta fórmula da un número que hay que relacionar con la letra correspondiente a través de la tabla siguiente:
Número Letra
0 T
1 R
2 W
3 A
4 G
5 M
6 Y
7 F
8 P
9 D
10 X
11 B
12 N
13 J
14 Z
15 S
16 Q
17 V
18 H
19 L
20 C
21 K
22 E
23 T

Lo he intentado, pero no he conseguido que me coja el resultado de la fórmula, y me lo relacione automáticamente con la letra. Espero que haya alguien que me pueda solucionar el problema. Muchas 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
sin imagen de perfil

RE:Socorro.Letra de NIF

Publicado por jjcastrillo (78 intervenciones) el 06/04/2006 08:18:09
Te sugiero un único cuadro de texto donde podrías colocar la siguiente fórmula:

=Medio("TRWAGMYFPDXBNJZSQVHLCKE";[nif]-Ent(([nif]/23))*23+1;1)

como ves ya incorpora la fórmula que tú habías indicado, de todas formas, no habría ningún problema en hacerlo en dos pasos.

Un saludo.
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:Socorro.Letra de NIF

Publicado por foto700 (11 intervenciones) el 07/04/2006 19:56:43
Muchísimas gracias amigo. Funciona a las mil maravillas.
¿Sería mucho pedir si me explicaras un poquito la fórmula?. Me gusta aprender, aunque tenga que abusar de la amabilidad de los que sabéis muchísimo más que yo. Muy agradecido de todas maneras.
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
sin imagen de perfil

RE:Socorro.Letra de NIF

Publicado por jjcastrillo (78 intervenciones) el 11/04/2006 13:09:10
=Medio("TRWAGMYFPDXBNJZSQVHLCKE";[nif]-Ent(([nif]/23))*23+1;1)

La función medio tiene tres parámetros:

1º una cadena de texto, en este caso "TRWAGMYFPDXBNJZSQVHLCKE"

2º la posición a partir de la cual quieres extraer: [nif]-Ent(([nif]/23))*23+1

3º el número de caracteres que quiere coger: 1

El 2º parámetro lo que hace es coger el resto de una división (la cifra del NIF, entre 23). Ese resto va a ser un número entre el 0 y el 22, al cual se le suma una unidad, con lo cual me da un número entre el 1 y el 23. El resutado por tanto me indicaría el lugar en el cual me debo situar dentro de esa cadena.

Con un ejemplo igual se entiende mejor. Piensa un DNI que el fuera el 25.

El resto de la división entre 23 es 2 y por tanto el valor del 2º parámetro sería el 3 (2+1). Nos vamos a la cadena (primer parámetro) y vemos que el tercer carácter es la W que es con el que nos quedamos, al coger únicamente un carácter (tercer parámetro).

Espero que haya servido la explicación.

Un saludo.
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:Socorro.Letra de NIF

Publicado por foto700 (11 intervenciones) el 11/04/2006 22:30:41
Muchísimas gracias Castrillo. Con estas explicaciones da gusto escribir en los foros. Te lo agradezco mucho, porque te has esmerado al máximo para que un principiante como yo lo entienda. Gracias de nuevo y un saludo muy cordial.
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