En Chile: calcular el digito verificador del RUT en Excel

Hace un tiempo un amigo que trabaja en recursos humanos me consultó si había alguna fórmula para calcular el dígito verificador de nuestro RUT en Excel y de paso, cómo y cuál era el proceso matemático que se hacía para extraerlo. Yo lo había estudiado vagamente asi que pensé que era el empujoncito final para meterme más a fondo en dicho tema, asi que sin pensarlo dos veces me puse a investigar y acá están mis resultados:

1. Qué es el RUT?
Es en términos simples, el ID o DNI en otros países. Un número único que nos identifica a los ciudadanos chilenos. Tiene un formato “XX.XXX.XXX-X”.

2. Cómo se calcula?
Según Wikipedia se hace de la siguiente forma:

Paso1: se procede a tomar el número de RUT de derecha a izquierda, multiplicando cada dígito por los números que componen la serie numérica 2,3,4,5,6,7; y sumando el resultado de estos productos, como se muestra a continuación (si se ha aplicado la serie hasta el 7 y quedan dígitos por multiplicar, se comienza la serie nuevamente):

Para el ejemplo se calculará el dígito verificador de 30.686.957:

7 × 2 = 14,
5 × 3 = 15,
9 × 4 = 36,
6 × 5 = 30,
8 × 6 = 48,
6 × 7 = 42,
0 × 2 = 0,
3 × 3 = 9,
y el total sería: 14+15+36+30+48+42+0+9 = 194

Paso 2: el número obtenido anteriormente se divide por 11 y se determina el resto de la división.

En el ejemplo: 194: 11 = 17
Resto: 7

Paso 3:Ahora a 11 se le resta el resto:

En el ejemplo: 11 – 7 = 4

Paso 4: ahora queda deducir el resultado:

* Si el resultado es 11, el dígito verificador será 0.
* Si el resultado es 10, el dígito verificador será K.
* En otro caso el resultado será el dígito verificador.

Como en el ejemplo el resultado de la resta es 4, el dígito verificador es 4.
Por ende, el RUT del ejemplo es el 30.686.957-4.

3. Soluciones en Excel
Visto lo visto, trabajé en una hoja de cálculo que nos ayudará a entender/realizar el proceso de extracción del dígito verificador.   Esta hoja contiene 3 ejemplos:

Ejemplo 1: si se ingresan tan sólo los dígitos a calcular el proceso de cálculo se realiza paso a paso siguiendo el camino de las flechas en las celdas.  Es útil para quienes no comprendieron la explicación del paso anterior.

Ejemplo 2: en éste caso el dígito verificador se extrae usando una fórmula anidada basada en la función “=EXTRAE()”.   Complicado de explicar, lo agregué para quien lo necesite.  Dicha fórmula no es mía, la encontré de casualidad en un foro de programación.

Ejemplo 3: por último incluyo una tercera alternativa, en éste caso un código que se ha incluido en un módulo.  Los módulos se pueden visualizar pulsando “ALT+F9” y se llaman en la hoja utilizando su nombre o nombre de la función (que en nuestro caso sería “=rutdigito()”.  Dicho código estaba en la entrada de la Wikipedia de la cual también saqué la explicación.

4. Descarga y créditos.
– La hoja de cálculo con los tres ejemplos la pueden descargar desde el siguiente enlace: vía Mediafire.
– Los créditos son para Wikipedia y Rodrigo Sandoval un usuario de LWP.
– Como dato adicional está un enlace que nos lleva a la Ley en la que se ordena la creación del RUT.

22 comentarios en “En Chile: calcular el digito verificador del RUT en Excel

  1. @sebastian
    Compartí un archivo de descarga donde están todos los ejemplos y funciones.

    Lo que está en el post es la explicación de cómo se obtiene el dígito.

    Saludos.

  2. Poniéndole un 0 a la derecha, con una aplicación que lo haga masivamente. El addon ASAP Utilities (gratis) permite rellenar con ceros a la izquierda.

  3. Gran aporte, gracias.
    Y no te desgastes en responder a individuos que ni siquieran se dan el tiempo de leer el articulo completo. Estaba super claro de donde se descarga.

  4. ESTIMADOS.. HICE UNA FORMULA SUPONIENDO QUE EL RUT SIN EL CODIGO ESTA EN LA CELDA "B5", AHI CALCULA AUTOMATICAMENTE EL CODIGO (NO HAY QUE CONVERTIRLO SI SALE 10 O 11).

    ESPERO QUE LOS AYUDE:::

    =SI(SI(11-(RESIDUO((SI(LARGO(B5)=7;0;EXTRAE(DERECHA(B5;8);1;1))*3)+(EXTRAE(DERECHA(B5;7);1;1)*2)+(EXTRAE(DERECHA(B5;6);1;1)*7)+(EXTRAE(DERECHA(B5;5);1;1)*6)+(EXTRAE(DERECHA(B5;4);1;1)*5)+(EXTRAE(DERECHA(B5;3);1;1)*4)+(EXTRAE(DERECHA(B5;2);1;1)*3)+(EXTRAE(DERECHA(B5;1);1;1)*2);11))=11;0;11-(RESIDUO((SI(LARGO(B5)=7;0;EXTRAE(DERECHA(B5;8);1;1))*3)+(EXTRAE(DERECHA(B5;7);1;1)*2)+(EXTRAE(DERECHA(B5;6);1;1)*7)+(EXTRAE(DERECHA(B5;5);1;1)*6)+(EXTRAE(DERECHA(B5;4);1;1)*5)+(EXTRAE(DERECHA(B5;3);1;1)*4)+(EXTRAE(DERECHA(B5;2);1;1)*3)+(EXTRAE(DERECHA(B5;1);1;1)*2);11)))=10;"K";SI(11-(RESIDUO((SI(LARGO(B5)=7;0;EXTRAE(DERECHA(B5;8);1;1))*3)+(EXTRAE(DERECHA(B5;7);1;1)*2)+(EXTRAE(DERECHA(B5;6);1;1)*7)+(EXTRAE(DERECHA(B5;5);1;1)*6)+(EXTRAE(DERECHA(B5;4);1;1)*5)+(EXTRAE(DERECHA(B5;3);1;1)*4)+(EXTRAE(DERECHA(B5;2);1;1)*3)+(EXTRAE(DERECHA(B5;1);1;1)*2);11))=11;0;11-(RESIDUO((SI(LARGO(B5)=7;0;EXTRAE(DERECHA(B5;8);1;1))*3)+(EXTRAE(DERECHA(B5;7);1;1)*2)+(EXTRAE(DERECHA(B5;6);1;1)*7)+(EXTRAE(DERECHA(B5;5);1;1)*6)+(EXTRAE(DERECHA(B5;4);1;1)*5)+(EXTRAE(DERECHA(B5;3);1;1)*4)+(EXTRAE(DERECHA(B5;2);1;1)*3)+(EXTRAE(DERECHA(B5;1);1;1)*2);11))))

  5. Hola a todos….. agradezco vuestro tiempo me sirvio bastante entender la lógica del algoritmo, hice mi propia modificación ps en mi excel (desfasado de la empresa) no admite funciones de EXTRAE… Por tal debe correr en cualquier tipo de Excel, os comparto:
    El Rut se introduce en la celda A2
    =SI((11-(RESTO(((DERECHA(IZQUIERDA(A2,8),1)*2)+(DERECHA(IZQUIERDA(A2,7),1)*3)+(DERECHA(IZQUIERDA(A2,6),1)*4)+(DERECHA(IZQUIERDA(A2,5),1)*5)+(DERECHA(IZQUIERDA(A2,4),1)*6)+(DERECHA(IZQUIERDA(A2,3),1)*7)+(DERECHA(IZQUIERDA(A2,2),1)*2)+(DERECHA(IZQUIERDA(A2,1),1)*3)),11)))<10,(11-B2)+0,SI((11-(RESTO(((DERECHA(IZQUIERDA(A2,8),1)*2)+(DERECHA(IZQUIERDA(A2,7),1)*3)+(DERECHA(IZQUIERDA(A2,6),1)*4)+(DERECHA(IZQUIERDA(A2,5),1)*5)+(DERECHA(IZQUIERDA(A2,4),1)*6)+(DERECHA(IZQUIERDA(A2,3),1)*7)+(DERECHA(IZQUIERDA(A2,2),1)*2)+(DERECHA(IZQUIERDA(A2,1),1)*3)),11)))=10,"K",SI((11-(RESTO(((DERECHA(IZQUIERDA(A2,8),1)*2)+(DERECHA(IZQUIERDA(A2,7),1)*3)+(DERECHA(IZQUIERDA(A2,6),1)*4)+(DERECHA(IZQUIERDA(A2,5),1)*5)+(DERECHA(IZQUIERDA(A2,4),1)*6)+(DERECHA(IZQUIERDA(A2,3),1)*7)+(DERECHA(IZQUIERDA(A2,2),1)*2)+(DERECHA(IZQUIERDA(A2,1),1)*3)),11)))=11,0)))

    • Uuuffff que gran trabajo! Pero, en qué versión de Excel la probaste? Estuve intentando ingresarla y hacerla funcionar pero me da error en Excel 2010. Será posible que al copiar y pegar se haya perdido algún formato?

Deja un comentario