La siguiente guía muestra la forma de validar RUT sin macros en Excel. Esto quiere decir que sólo con fórmulas de Excel sabremos si el RUT ingresado es válido o podremos obtener el dígito verificador de un RUT.

Pasos para validar RUT

Primero crearemos 2 hojas, una para el ingreso del RUT y la obtención de resultados y la otra para los cálculos.

Ahora en la hoja verificar RUT pondremos una celda donde ingresaremos el RUT a verificar.

Teniendo la celda a la cual aplicaremos las fórmulas, ahora vamos a la hoja Calculos.

Los cálculos

En la hoja cálculos lo primero que haremos será obtener el RUT sin DV (dígito verificador). Para eso aplicaremos la siguiente fórmula.

=IZQUIERDA('Verificar RUT'!C4;SI(LARGO('Verificar RUT'!C4)=9;7;8))

Para explicar esto, debo comenzar por la fórmula que está dentro de la principal.

SI(LARGO('Verificar RUT'!C4)=9;7;8)

Acá consultamos el largo de la celda donde se ingresa el RUT. Si el largo es igual a 9, entonces se aplicará el número 7 a la fórmula principal, si no, se aplicará el 8.

Sabiendo lo anterior, veremos que la fórmula principal lo que hace es obtener X dígitos de izquierda a derecha. Dependiendo del largo (la fórmula interna) se obtendrán 7 u 8 dígitos (de izquierda a derecha).

El resultado para el ejemplo que hago en esta guía es el siguiente.

Tenemos el RUT sin DV. Ahora debemos hacer que tenga 8 dígitos para aplicar una fórmula fija a los RUT de 7 y 8 dígitos. Para eso le agregaremos un 0 de la siguiente forma.

=SI(LARGO(D2)=8;D2;CONCATENAR(0;D2))

Si el largo de la celda anterior es 8, se deja ese resultado, si no, se agrega un 0 al inicio. El resultado se verá así.

Ya tenemos un RUT con el cual trabajar. Ahora aplicaremos la fórmula que utiliza el SII la cual podemos obtener de ESTE ENLACE.

Voy a extraer cada dígito del RUT para poder aplicar los cálculos según la fórmula de SII de la siguiente forma.

=EXTRAE($D$3;8;1)

Vamos a extraer de la celda D3 (RUT SIN DV en la imagen) desde el dígito 8, 1 dígito. Así con los demás dígito cambiando sólo el 8 por 7, 6, 5, 4, 3, 2, 1.

Teniendo los dígitos del RUT separados y de forma inversa, ahora aplicaremos los cálculos con la serie numérica 2, 3, 4, 5, 6, y 7.

=E4*2

Con esto multiplicamos cada dígito en orden por la serie numérica descrita antes. El resultado es el siguiente.

En este ejemplo el cálculo sería: 7*2=14, 6*3=18, etc. Al llegar a 7 se comienza nuevamente con 2.

Ahora debemos sumar los resultados y nos dará 106. Pueden utilizar autosuma.

Lo siguiente es dividir por 11 (módulo 11 que aplica SII) y nos dará un resultado probablemente con decimales.

Para evitar los decimales aplicaremos la fórmula como entero de la siguiente forma.

=ENTERO(F12/11)

Obteniendo lo siguiente.

Ahora aplicamos la fórmula de TOTAL – (11 * modulo11) y nos dará un dígito. Esto lo haremos con la siguiente fórmula.

=F12-(11*F13)

Ahora a 11 le restaremos el número que obtuvimos antes y nos dará como resultado el dígito verificador.

=SI(ENTERO(11-F14)=10;"K";SI(ENTERO(11-F14)=11;"0";ENTERO(11-F14)))

 

La fórmula reemplazará el resultado si obtenemos 10 a K y si obtenemos 11 a 0.

En la imagen anterior, además de calcular el dígito verificador real del RUT, aparece el DV ingresado en la hoja verificar RUT. Esto lo conseguimos de la siguiente forma.

=ENTERO(DERECHA('Verificar RUT'!C4;1))

Con esto obtenemos el primer dígito de derecha a izquierda.

Lo último que haremos será comprobar si la persona ingreso un RUT con o sin DV. Para eso utilizamos esta fórmula.

=SI.ERROR(ENCONTRAR("-";'Verificar RUT'!C4);"SIN DV")

Lo que hace es ver si la celda «Verificar RUT’!C4» tiene el signo «-«, si lo tiene dará como resultado la posición del guión en el RUT. Si no, dará como resultado el texto «SIN DV».

Ahora volvemos a la hoja Verificar RUT y agregamos una celda de resultado con el siguiente código.

=SI(Calculos!D19="SIN DV";CONCATENAR("DV = ";Calculos!F15);SI(Calculos!D15=Calculos!F15;"RUT VALIDO";"RUT INVALIDO"))

La explicación es la sigiuente: si la celda «Calculos!D19» contiene la frase «SIN DV», entonces va a concatenar o unir el texto DV = y el resultado de la celda «Calculos!F15».  Si no aparece ese texto, entonces hará lo siguiente: Si la celda «Calculos!D15» (la que contiene el DV que ingresaron en Ingrese su RUT) es igual a la celda «Calculos!F15» (digito verificador real), entonces mostrará un mensaje de RUT VALIDO, si no, mostrará RUT INVALIDO.

Ejemplos de resultados:

Espero les sea de utilidad.

Pueden descargar el excel de ejemplo DE AQUÍ.


Francisco Molina

Soy un ingeniero en conectividad y redes amante de la música y todo tipo de tecnologías.