En el trabajo diario, usamos cada día más el número del DNI, ya sea un NIF o NIE, como identificador único. Deberemos introducirlo en alguna tabla o base de datos de gestión de clientes o proveedores o … Pero siempre deberíamos validar el DNI en Excel para verificar que lo que hemos escrito es correcto porque podemos cometer un error al teclearlo. Aquí muestro unas sencillas fórmulas que nos permitirán realizar ese chequeo. Atención, sólo estoy verificando que la letra es correcta por lo que aún podría ocurrir que el número de DNI en conjunto no lo fuera.Adicionalmente veremos las siguientes funciones de Excel:
- Valor
- Residuo
- Extrae
El algoritmo para obtener la letra del DNI
La letra del NIF se obtiene a partir de un algoritmo conocido como módulo 23. El algoritmo consiste en aplicar la operación aritmética de módulo 23 al número del DNI. El módulo 23 es el número entero obtenido como resto de la división entera del número del DNI entre 23. El resultado es un número comprendido entre el 0 y el 22. En base a una tabla conocida se asigna una letra. La combinación del DNI con esa letra es el NIF.
Este mismo algoritmo también puede utilizarse para el cálculo del NIE. En el caso que el NIE empiece por X, se calcula despreciando la X y utilizando los 7 dígitos, si el NIE empieza por Y, se sustituye la letra Y por el número 1, si el NIE empieza por Z, se sustituye la letra Z por el número 2 y se realiza el mismo cálculo. Este mismo algoritmo también puede utilizarse para el cálculo del NIE. En el caso que el NIE empiece por X, se calcula despreciando la X y utilizando los 7 dígitos, si el NIE empieza por Y, se sustituye la letra Y por el número 1, si el NIE empieza por Z, se sustituye la letra Z por el número 2 y se realiza el mismo cálculo.
El algoritmo no se aplica para obtener el Código de Identificación Fiscal (CIF), que es el “NIF” propio de las personas jurídicas, pues la letra que tiene no se basa en una fórmula, sino que identifica el tipo de entidad (p.e. B para Sociedades Limitadas; G para Asociaciones sin ánimo de lucro y otros tipos no definidos, etc.)
Ejemplo
Vamos a repasar cuatro casos: uno para NIF y tres para NIE, como se muestra en la siguiente figura:
- La función IZQUIERDA toma los 8 primeros dígitos del número de NIF: 21234567.
- La función VALOR convierte en número el resultado obtenido de la función IZQUIERDA.
Convierte una cadena de texto que representa un número en un número. Su sintaxis es:
VALOR(texto)
Texto es el texto entre comillas o una referencia a una celda que contiene el texto que se desea convertir.
El argumento texto puede tener cualquiera de los formatos de número constante, fecha u hora reconocidos por Microsoft Excel. Si no tiene uno de estos formatos, VALOR devuelve el valor de error #¡VALOR!
- La función RESIDUO calcula el resto de la división por 23.
Devuelve el resto después de que número se divida entre divisor. El resultado tiene el mismo signo que divisor. Sintaxis:
=RESIDUO (número;divisor)
Número es el número del que se desea obtener el resto
Divisor es el número entre el que se desea dividir número.rasNIF y toma el dato de la columna 2.
Cuando se trata de verificar la letra del NIE, deberemos modificar un poco las funciones:
- La función EXTRAE toma 7 dígitos a partir del segundo del número de NIE que queremos verificar. En el ejemplo, 1234567.
EXTRAE devuelve un número específico de caracteres de una cadena de texto, empezando en la posición que se especifique, en función del número de caracteres definidos. La sintaxis de la función es:
=EXTRAE(texto;núm_inicial;núm_caracteres)
Texto: es la cadena de texto que contiene los caracteres que desea extraer.
Núm_inicial: la posición del primer carácter que desea extraer del texto. El primer carácter del texto tiene núm_inicial 1, y así sucesivamente.
Núm_caracteres: especifica el número de caracteres que EXTRAE debe devolver del texto.
- Uso del operador &: en el caso de que el NIE comience por Y o por Z, los sustituiremos por 1 o por 2, respectivamente, para obtener el texto sobre el que seguiremos realizando los cálculos. Es decir, 1 & 1234567, en el caso de que el NIE comience por Y; 2 & 1234567, si comienza por Z.
Por cierto que en las líneas 2 y 3 de la figura anterior hay un claro ejemplo de que, si me equivoco y en lugar de X pongo 0, la letra va a ser la misma pero el DNI es incorrecto.
En el siguiente enlace puedes bajarte este mismo ejemplo par que puedas “bichear” con las fórmulas por ti mismo:
Verificación de la letra del DNI