Verificar la letra del DNI: NIF/NIE (y II)

En una entrada anterior con este nombre, ya vimos una manera de verificar la letra del DNI. Aquí vamos a ver cómo Excel nos puede ayudar a construir una comprobación mucho más robusta, aunque no signifique que ya estamos libres de errores mediante la técnica de validación de datos y una fórmula de condiciones anidadas (tendremos cuatro). Fundamentalmente, lo que quiero mostrar es la potencia de la opción Personalizada de la validación de datos. Por otra parte, el uso de condiciones anidadas nos permite lograr muy buenos resultados aunque pueda resultar, en ocasiones, complicado de seguir.

Validación de datos

Para el ejemplo propuesto, he creado una tabla de dos columnas

CheckRobusto

En la primera he creado una validación de datos Personalizada para que el primer carácter de la entrada tenga que comenzar por un número, la letra “X”, la “Y” o la “Z”. Vamos a Validación de datos, Datos – Validación de datos, y seleccionamos Validación de datos-validación de datos.

ValidaciónDatos

En la pestaña Configuración, he elegido Personalizado en el cuadro de lista Permitir, y he escrito la siguiente fórmula en el cuadro Fórmula

FórmuladeValidación

Consejo: Como la fórmula es más larga que el cuadro, si hubiera errores, tendría que borrarla y volver a empezar. Para evitar ese problema, la he hecho en Excel y la he comprobado varias veces para ver que funciona correctamente. Después la he copiado en el cuadro. No se mueven las referencias por lo que este método funciona perfectamente.

Veamos la fórmula de derecha a izquierda:

  • La función Izquierda(c3)=”Z” me dice que el primer dígito del DNI debe ser la letra “Z” ( o la “Y” o la “X” en los casos siguientes). La función izquierda tiene dos argumentos: el primero es la referencia de celda o el literal del que quiero tomar la información y el segundo es el número de carácteres que quiero tomar. Si este argumento no lo escribo (como en el ejemplo) la función toma 1 por defecto.
  • La otra posibilidad de un DNI es que comience por un número. Eso es lo que compruebo con la función Esnumero. Como la función IZQUIERDA devuelve texto, lo que tendré que hacer será convertirlo a número para  que la función Esnumero funcione correctamente.
  • Con Largo(c3)=9 estoy comprobando que el número de caracteres sea 9. Ni más ni menos. De esa manera se evita lo que he visto tantas veces: DNIs sin los ceros de la izquierda, un espacio o un guión antes de la letra de la derecha, un espacio o un guión después de laletra de la izquierda en el caso de los NIEs, etc.

Condición anidada

En la columna Verificación he escrito una condición anidada. He tomado la fórmula que ya vimos en la entrega anterior sobre este tema y he añadido las diferentes posibilidades de DNI que tenemos. Evidentemente, tendremos una fórmula condicional muy larga pero las basees para su elaboración ya las tenemos. La he troceado para que se pueda analizar sin dificultad.

Formula

Archivo de ejemplo de validación de datos y condición anidada

(Visited 9.511 times, 1 visits today)

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información ACEPTAR

Aviso de cookies