Cómo Calcular el Dígito Verificador del RUT en Excel: Guía Paso a Paso
Cómo Calcular el Dígito Verificador del RUT en Excel: Guía Paso a Paso
¿Por qué calcular el dígito verificador en Excel?
Excel es una herramienta fundamental en las oficinas chilenas, y poder calcular el dígito verificador del RUT directamente en tus planillas puede ahorrarte tiempo valioso. Ya sea para validar datos de clientes, empleados o proveedores, tener esta fórmula implementada te permitirá verificar RUTs instantáneamente sin salir de tu hoja de cálculo.
El algoritmo módulo 11 usado en Chile puede parecer complejo, pero con las fórmulas correctas de Excel, podrás automatizar completamente este proceso.
Entendiendo el algoritmo antes de implementarlo
Antes de crear nuestra fórmula, recordemos cómo funciona el cálculo del dígito verificador:
- Se toma el RUT sin el dígito verificador
- Se multiplica cada dígito (de derecha a izquierda) por la serie: 2, 3, 4, 5, 6, 7, 2, 3, 4...
- Se suman todos los productos
- Se divide la suma por 11 y se obtiene el resto
- Se calcula: 11 - resto
- Si el resultado es 11, el dígito es 0; si es 10, es K
Método 1: Fórmula todo-en-uno (recomendada)
Esta es la fórmula más eficiente para calcular el dígito verificador. Asumiendo que el RUT sin dígito verificador está en la celda A1:
La súper fórmula:
=SI(11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(A1,"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)=11,"0",SI(11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(A1,"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)=10,"K",11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(A1,"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)))
Explicación detallada de la fórmula:
- TEXTO(A1,"00000000"): Convierte el RUT a texto con 8 dígitos, agregando ceros a la izquierda si es necesario
- EXTRAE(...,{1;2;3;4;5;6;7;8},1): Extrae cada dígito individualmente
- VALOR(...): Convierte cada carácter extraído a número
- SUMAPRODUCTO(...,{3;2;7;6;5;4;3;2}): Multiplica cada dígito por su factor correspondiente y suma todo
- RESIDUO(...,11): Calcula el resto de dividir por 11
- 11-RESIDUO(...): Calcula el dígito verificador
- SI anidados: Maneja los casos especiales (11→0, 10→K)
Método 2: Paso a paso con columnas auxiliares
Si prefieres ver el proceso paso a paso, puedes usar columnas auxiliares:
Configuración de la hoja:
Columna | Contenido |
---|---|
A1 | RUT sin DV (ej: 12345678) |
B1-B8 | Cada dígito del RUT |
C1-C8 | Factores multiplicadores |
D1-D8 | Productos |
E1 | Suma total |
F1 | Dígito verificador |
Fórmulas paso a paso:
Paso 1: Extraer cada dígito (B1 a B8)
- B1:
=VALOR(EXTRAE(TEXTO($A$1,"00000000"),1,1))
- B2:
=VALOR(EXTRAE(TEXTO($A$1,"00000000"),2,1))
- ... (continuar hasta B8)
Paso 2: Factores multiplicadores (C1 a C8)
- C1:
3
, C2:2
, C3:7
, C4:6
, C5:5
, C6:4
, C7:3
, C8:2
Paso 3: Calcular productos (D1 a D8)
- D1:
=B1*C1
- D2:
=B2*C2
- ... (continuar hasta D8)
Paso 4: Sumar productos (E1)
- E1:
=SUMA(D1:D8)
Paso 5: Calcular dígito verificador (F1)
- F1:
=SI(11-RESIDUO(E1,11)=11,"0",SI(11-RESIDUO(E1,11)=10,"K",11-RESIDUO(E1,11)))
Método 3: Función personalizada con VBA
Para usuarios avanzados, crear una función personalizada en VBA es la opción más elegante:
Código VBA:
1Function DigitoVerificador(rut As Variant) As String
2 Dim rutStr As String
3 Dim suma As Long
4 Dim factor As Integer
5 Dim i As Integer
6 Dim digito As Integer
7
8 ' Convertir a string y rellenar con ceros
9 rutStr = Format(rut, "00000000")
10
11 ' Calcular suma ponderada
12 suma = 0
13 factor = 2
14
15 For i = 8 To 1 Step -1
16 suma = suma + Val(Mid(rutStr, i, 1)) * factor
17 factor = factor + 1
18 If factor > 7 Then factor = 2
19 Next i
20
21 ' Calcular dígito verificador
22 digito = 11 - (suma Mod 11)
23
24 ' Casos especiales
25 If digito = 11 Then
26 DigitoVerificador = "0"
27 ElseIf digito = 10 Then
28 DigitoVerificador = "K"
29 Else
30 DigitoVerificador = CStr(digito)
31 End If
32End Function
Cómo implementar la función VBA:
- Presiona
Alt + F11
para abrir el editor VBA - Inserta un nuevo módulo:
Insertar → Módulo
- Pega el código anterior
- Guarda y cierra el editor
- Usa la función en Excel:
=DigitoVerificador(A1)
Validación completa de RUT con formato
Si quieres validar un RUT completo (con dígito verificador incluido), usa esta fórmula:
=SI(DERECHA(A1,1)=SI(11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(VALOR(IZQUIERDA(SUSTITUIR(SUSTITUIR(A1,".",""),"-",""),8)),"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)=11,"0",SI(11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(VALOR(IZQUIERDA(SUSTITUIR(SUSTITUIR(A1,".",""),"-",""),8)),"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)=10,"K",11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(VALOR(IZQUIERDA(SUSTITUIR(SUSTITUIR(A1,".",""),"-",""),8)),"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11))),"VÁLIDO","INVÁLIDO")
Esta fórmula:
- Limpia el formato del RUT (quita puntos y guión)
- Extrae los primeros 8 dígitos
- Calcula el dígito verificador esperado
- Lo compara con el dígito verificador proporcionado
- Devuelve "VÁLIDO" o "INVÁLIDO"
Plantilla Excel lista para usar
Para facilitar tu trabajo, aquí te dejo una estructura de plantilla que puedes recrear:
Hoja "Calculadora RUT":
Celda | Contenido | Fórmula |
---|---|---|
A1 | "Ingrese RUT sin DV:" | (texto) |
B1 | 12345678 | (entrada manual) |
A2 | "Dígito Verificador:" | (texto) |
B2 | (resultado) | =SI(11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(B1,"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)=11,"0",SI(11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(B1,"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11)=10,"K",11-RESIDUO(SUMAPRODUCTO(VALOR(EXTRAE(TEXTO(B1,"00000000"),{1;2;3;4;5;6;7;8},1)),{3;2;7;6;5;4;3;2}),11))) |
A3 | "RUT Completo:" | (texto) |
B3 | (resultado) | =TEXTO(B1,"#,##0")&"-"&B2 |
Casos especiales y consideraciones
RUTs que comienzan con cero:
Algunos RUTs antiguos o de ciertas regiones pueden comenzar con cero. La fórmula maneja esto automáticamente con la función TEXTO.
Formato de entrada:
La fórmula acepta números sin formato. Si tus RUTs vienen con puntos y guión, primero límpialos con:
=VALOR(SUSTITUIR(SUSTITUIR(A1,".",""),"-",""))
Validación en lotes:
Para validar múltiples RUTs, simplemente arrastra la fórmula hacia abajo. Excel ajustará las referencias automáticamente.
Solución de problemas comunes
Error #¡VALOR!:
- Verifica que el RUT contenga solo números
- Asegúrate de que no haya espacios en blanco
Resultado incorrecto:
- Confirma que el RUT tenga exactamente 7 u 8 dígitos
- Verifica que no estés incluyendo el dígito verificador en el cálculo
La fórmula es muy larga:
- Considera usar la función VBA para simplificar
- Divide la fórmula en celdas auxiliares
Optimización para grandes volúmenes
Si trabajas con miles de RUTs:
- Desactiva el cálculo automático:
Fórmulas → Opciones de cálculo → Manual
- Usa tablas: Convierte tu rango a tabla para mejor rendimiento
- Considera Power Query: Para validaciones masivas, Power Query puede ser más eficiente
Integración con otros sistemas
Exportar a CSV:
Los resultados calculados se mantienen al exportar, facilitando la integración con otros sistemas.
Conexión con bases de datos:
Puedes usar estas fórmulas con datos importados desde Access, SQL Server u otras fuentes.
Automatización con macros:
Combina las fórmulas con macros para crear procesos completamente automatizados.
Conclusión
Calcular el dígito verificador del RUT en Excel es una habilidad valiosa para cualquier profesional que trabaje con datos en Chile. Ya sea que prefieras la fórmula todo-en-uno, el método paso a paso o la función VBA, ahora tienes las herramientas para implementar esta funcionalidad en tus hojas de cálculo.
Recuerda que la precisión es fundamental cuando trabajas con RUTs, ya que un error puede significar problemas en facturación, contrataciones o trámites tributarios. Con estas fórmulas, puedes estar seguro de que tus cálculos serán siempre correctos.
---
Recursos adicionales
- Servicio de Impuestos Internos (SII): Para información oficial sobre el RUT
- Microsoft Excel Help: Para profundizar en las funciones utilizadas
- Comunidad Excel Chile: Foros donde puedes compartir tus experiencias y resolver dudas
Sobre el autor
Benjamín Maturana
Analista de Datos
Experto en Excel y automatización de procesos. Cree firmemente que todo problema tiene una solución en una hoja de cálculo.