WebWarrior Herramientas
Español, otros idiomas

Cómo calcular la letra del DNI a mano, en Excel y en código

La letra del DNI no es aleatoria: es un dígito de control que se obtiene dividiendo el número entre 23. Te enseñamos a calcularla con lápiz y papel, con una fórmula de hoja de cálculo y a evitar los errores que más se repiten.

Por Sandeep Upadhyay, WebWarrior Tools · Publicado: · Actualizado: · Metodología

Para qué sirve la letra

La letra final del DNI convierte el número en el Número de Identificación Fiscal (NIF) de las personas físicas españolas. Funciona como un código de control: si alguien se equivoca en una cifra al escribir el número, la letra ya no encaja y el error se detecta antes de que llegue a un banco, a Hacienda o a la Seguridad Social. No prueba que el DNI exista ni que pertenezca a nadie; solo que el número está bien escrito.

La regla en una frase

Se divide el número de 8 cifras entre 23 y se toma el resto (un valor entre 0 y 22). Ese resto indica la posición en esta tabla:

Resto01234567891011
LetraTRWAGMYFPDXB
Resto1213141516171819202122
LetraNJZSQVHLCKE

Una forma de recordarla: la secuencia completa es TRWAGMYFPDXBNJZSQVHLCKE. Faltan la I, la Ñ, la O y la U, para que no se confundan con el 1, la N, el 0 y la V.

Ejemplo 1: el número 12345678

  1. Divide 12.345.678 entre 23. El cociente entero es 536.768.
  2. Multiplica el cociente por 23: 536.768 × 23 = 12.345.664.
  3. Resta: 12.345.678 − 12.345.664 = 14.
  4. En la tabla, el resto 14 corresponde a la Z. El NIF completo es 12345678Z.

Con calculadora de bolsillo, que no tiene operación “resto”, haz así: 12.345.678 ÷ 23 = 536.768,6087. Quédate con la parte decimal (0,6087), multiplícala por 23 y redondea: 0,6087 × 23 = 14,0. Resto 14, letra Z.

Ejemplo 2: el número 87654321

87.654.321 ÷ 23 = 3.811.057 y un resto de 10 (3.811.057 × 23 = 87.654.311). La letra en la posición 10 es la X: 87654321X.

Números con ceros a la izquierda

Los DNI antiguos pueden tener menos de 8 cifras. Los ceros a la izquierda no cambian el cálculo: 01234567 es el número 1.234.567, cuyo resto entre 23 es 19, y la letra es la L. Donde sí importan es al escribirlo en formularios que exigen 8 cifras exactas: hay que rellenar con ceros delante.

El NIE: misma regla con una letra delante

El Número de Identidad de Extranjero empieza por X, Y o Z, seguido de 7 cifras y la letra de control. Para calcular la letra se sustituye la inicial por un número (X = 0, Y = 1, Z = 2) y se aplica la misma división entre 23:

Existen también NIF de personas físicas que empiezan por K (españoles menores de 14 años sin DNI), L (españoles no residentes sin DNI) y M (extranjeros que no tienen NIE). Su control sigue un esquema propio y no siempre se pueden validar con esta fórmula.

La fórmula para Excel o Google Sheets

Si tienes el número en la celda A2, esta fórmula devuelve la letra en una versión de Excel en español:

=EXTRAE("TRWAGMYFPDXBNJZSQVHLCKE";RESIDUO(A2;23)+1;1)

En inglés o en Google Sheets con configuración inglesa es =MID("TRWAGMYFPDXBNJZSQVHLCKE",MOD(A2,23)+1,1). Se suma 1 porque las funciones de texto empiezan a contar en la posición 1, y el resto empieza en 0. Si la celda contiene texto con puntos o guiones, límpialo antes con SUSTITUIR.

Y en código

En casi cualquier lenguaje es una línea. En JavaScript:

const letra = "TRWAGMYFPDXBNJZSQVHLCKE"[numero % 23];

Para un NIE, sustituye primero la X, Y o Z inicial por 0, 1 o 2 y convierte el resultado a número.

Errores frecuentes

Si prefieres no hacer cuentas, nuestro validador de DNI, NIE y CIF hace el cálculo en el navegador, sin enviar el número a ningún servidor.

Preguntas frecuentes

¿Cómo se calcula la letra del DNI?

Se divide el número entre 23 y el resto (de 0 a 22) se busca en la secuencia TRWAGMYFPDXBNJZSQVHLCKE. Por ejemplo, 12345678 da resto 14 y letra Z.

¿Por qué no hay letras I, Ñ, O ni U en el DNI?

Se excluyeron para evitar confusiones con el 1, la N, el 0 y la V.

¿Cómo se calcula la letra del NIE?

Se sustituye la X, Y o Z inicial por 0, 1 o 2 y se aplica la misma división entre 23 al número resultante de 8 cifras.

¿Una letra correcta significa que el DNI es real?

No. Solo indica que el número está bien formado. No comprueba que exista ni a quién pertenece.

Fuentes y normativa oficial

Herramientas relacionadas

Más guías

Todas las guías →