Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Validar DNI en Excel

| Sin comentarios

Antes de explicar los pasos a seguir de esta herramienta, primero es importante conocer en qué consiste para que sea más sencillo comprender su uso. 

 

Una validación de datos hace referencia a la restricción de información que no queremos que sea ingresada en nuestro archivo. Es decir, podemos configurar, bajo ciertas condiciones, los únicos datos que pueden ser seleccionados. Esto tiene el propósito de evitar que ciertos usuarios digiten información que no ha sido solicitada en una celda. Asimismo, también sirve como una ayuda para que los usuarios se percaten de cualquier error escrito y puedan corregirlo.

La validación de datos, como muchas de las herramientas en Excel, puede realizarse de muchas formas; sin embargo, en esta ocasión, presentaremos dos métodos: la primera utilizando la opción “Validación de Datos” y la segunda con el uso de macros en VBA.

 

Validar DNI usando Validación de datos

Asumamos que (como en el caso peruano), la estructura del DNI debe contener 8 caracteres y todos deben ser numéricos. 

¿Cuáles son los pasos para seguir?

Paso 1: Como se trata de números de DNI, algunos pueden iniciar con “0”, por lo que es necesario habilitar la columna “A” para que pueda recibir estos números y no los omita.

Para esto debemos seleccionar toda la columna (o el conjunto de celdas donde se aplicará la validación)  y apretar el clic derecho de nuestro mouse. Luego elegir la opción “Formato de celdas” y la categoría “Texto”. Una vez realizado este paso podemos proseguir a digitar los DNI. 

Formato de Celda - Texto

 

Paso 2: Ahora debemos configurar la columna para que esta acepte únicamente números de 8 dígitos.

Para eso debemos dirigirnos a la ventana “Datos” —> “Validación de Datos” y ubicarnos en “Configuración”.

Luego, en el listado de las opciones de “Permitir” seleccionar “Longitud del texto”; en “Datos” seleccionar “Igual a” y en “Longitud” digitar el número 8. 

Validación de datos longitud de texto

De acuerdo a esto se validará solo que tenga 8 caracteres, si deseamos por el contrario colocar las dos validaciones, que sea número y que la longitud sea de 8 caracteres, en la misma "validación de datos" en lugar de elegir "Longitud de texto" usar "personalizada y colocar como fórmula:

=Y(VALOR(B2)>0,VALOR(B2)<100000000,LARGO(B2)=8)

Donde B2 es la celda inicial (superior izquierda) desde donde se aplica la validación. 

Paso 3: Como último paso se sugiere configurar un mensaje de entrada y de salida. Esto le indicará al usuario si el valor que está digitando es correcto o debe corregirlo, ya que este aparecerá cuando nos situemos en cualquier celda de la columna, para lo cual se selecciona "Mensaje de error" en la "Validación de datos"

 

Validar DNI usando Macros

 

Paso 1: Podemos emplear una macro en un módulo, o crear un formulario, para efectos del ejemplo podemos usar Formularios en Excel

 

Paso 2: Ahora tenemos que empezar a digitar los códigos. Iniciaremos con el botón “Registrar Datos” por lo que le haremos doble clic para que se abra el UserForm1 e introduciremos el siguiente código:

 

Private Sub CommandButton1_Click()

ult = Cells(Rows.Count , 1).End(xlUp).Row

If Len(TextBox1.Text) = 8 And IsNumeric(TextBox1.Text) Then

Cells(ult + 1, 1).Value = TextBox1.Text

Else

MsgBox "Número de DNI no válido"

End If

End Sub

 

En el siguiente enlace se pueden descargar los ejemplos explicados: Validar DNI en Excel

La parte mas importante de este código es: 

If Len(TextBox1.Text) = 8 And IsNumeric(TextBox1.Text) Then

 

En donde la función LEN en nos sirve para validar que se están empleado 8 caracteres, y la función IsNumeric nos permite controlar que los caracteres empleados se traten de números.

 

Otro elemento importante es el bucle IF THEN ELSE, el cual permite distinguir entes el registro del dato anotado en una celda, del MSGBOX que nos alerta que no se están cumpliendo con las dos validaciones que debe tener el DNI. 

La primera línea del código, al igual que en el paso anterior, quiere decir que se está llamando a la macro con el botón CommandButton2 y que, al darle clic a este, se realizará todo lo que se digite a continuación. La segunda contiene a la función que permite que el formulario se elimine y finalmente, con “End Sub” se cierra la macro. 

Realizado con la ayuda de: Alexandra Loayza del Pozo

Deja una respuesta

Los campos requeridos estan marcados con *.