Excel

Función NUMERO.ROMANO en Excel: cómo convertir cifras a letras

octubre 31, 2026 Tuto Excel 11 min read
Función NUMERO.ROMANO en Excel: cómo convertir cifras a letras

Cuando tienes que rellenar una factura, el importe siempre aparece dos veces: en cifras y en letras. Excel trae de fábrica funciones para sumar, buscar y contar, pero ninguna que escriba "Mil doscientos cincuenta" a partir de 1.250. El complemento NumLetras cubre ese hueco: convierte cualquier número de una celda en su texto legal, listo para imprimir en facturas, recibos o cheques. En este tutorial lo instalas, lo pruebas sobre una hoja de facturación y aprendes a personalizar la moneda, los decimales y las mayúsculas. Funciona en Microsoft 365, Excel 2024, 2021, 2019 y 2016; el archivo .xlam no se ejecuta en Excel para la web.

Qué es NumLetras y por qué Excel no lo trae de fábrica

Imagina la hoja Factura de tu negocio. En la celda B5 escribes el total: 1.250. La plantilla tiene otra celda, B6, reservada para el importe en letras, y ahí debería leerse "Mil doscientos cincuenta". Con BUSCARV, con SI, con todas las funciones que vienen de serie en Excel, no se puede. Convertir cifras a letras depende de las reglas de cada idioma: los acuerdos entre decenas y centenas, la forma de los plurales, la moneda y su subdivisión. Programar eso a mano, con fórmulas anidadas, es prácticamente inviable. Por eso Mauricio Baeza y la comunidad de Los Encuentros Excel crearon NumLetras, un proyecto libre nacido en Chile que traduce números a su escritura en español.

El complemento se descarga como archivo .xlam, se instala y expone una función definida por el usuario llamada NUMEROENLETRAS. Al instalarlo, esa función aparece en el asistente (fx) bajo la categoría "Definida por el usuario", lista para combinarse con el resto de tu hoja. No necesitas saber VBA para usarla: la función se llama como cualquier otra, con sus argumentos entre paréntesis. Si más adelante prefieres un libro independiente, también existe la versión .xlsm, que lleva el código VBA dentro del propio archivo y se puede copiar a un pendrive sin instalar nada.

Las dos versiones que existen y cuál te conviene

NumLetras se distribuye en dos archivos con el mismo nombre y el mismo resultado, pensados para situaciones distintas:

  • numletras.xlam (complemento): se guarda en la carpeta de complementos de Windows y queda disponible en cualquier libro que abras. Lo activas una vez y la función NUMEROENLETRAS aparece en todos tus archivos. Es la opción cómoda si trabajas con varias plantillas de facturas a la vez.
  • numletras.xlsm (libro con macros): contiene el código VBA dentro de un libro normal. Lo abres, escribes =NUMEROENLETRAS(...) y funciona. Ideal si quieres llevar NumLetras en un USB o enviárselo a un compañero sin que tenga que instalar nada.

La diferencia práctica está en la portabilidad. Con el .xlam lo instalas en tu equipo y lo usas siempre; con el .xlsm lo llevas contigo. Si vas a montar una plantilla de factura que vas a usar durante meses, instala el .xlam. Si solo lo necesitas para un trabajo puntual, copia el .xlsm.

Nota: en este artículo el separador de argumentos es el punto y coma, propio de Excel configurado con coma decimal. En Excel con punto decimal (México, Estados Unidos) el separador es la coma.

Instalar NumLetras como complemento en Excel

Empezamos con la versión .xlam, la que más vas a usar. Antes de tocar la cinta, asegúrate de tener la pestaña Programador a la vista.

Activar la pestaña Programador si no la ves

  1. Abre Excel y ve a Archivo > Opciones.
  2. En la ventana que se abre, pulsa Personalizar cinta de opciones.
  3. En la columna derecha, marca la casilla Programador.
  4. Pulsa Aceptar.
ArchivoOpcionesPersonalizar cinta de opciones

La pestaña Programador aparece al final de la cinta, a la derecha de Vista.

Copiar el archivo a la carpeta correcta

  1. Descarga numletras.xlam desde la página oficial del proyecto.
  2. Abre el Explorador de Windows y copia el archivo a la ruta %AppData%\Microsoft\AddIns.
  3. En Excel, ve a Programador > Complementos > Complementos de Excel.
ProgramadorComplementosComplementos de Excel
  1. En el cuadro que se abre, marca NumLetras y pulsa Aceptar.
Nota: en macOS la carpeta de complementos está en ~/Library/Group Containers/UBF8T346G9.Office/User Content/Add-Ins y se activa desde Herramientas > Complementos de Excel.
Comprueba: al pulsar Aceptar, la función NUMEROENLETRAS debe aparecer en el asistente fx dentro de la categoría "Definida por el usuario".

Convertir un importe a letras con el asistente de funciones

Abre tu libro Factura y crea una hoja sencilla para probar el complemento. En la celda A1 escribimos el número y en B1 aparecerá el texto.

  1. Selecciona B1 y pulsa Mayús+F3 (en Mac, Fn+F3) para abrir el asistente.
  2. En Categoría, elige Definida por el usuario.
  3. En Nombre de la función, escribe NUMEROENLETRAS y pulsa Aceptar.
A1fx1250
A B
1 1250
Factura

La función admite estos argumentos, en este orden: =NUMEROENLETRAS(Número;Moneda;Subdivision;Faccion;Adicional;Iniciales). Para empezar, escribe:

=NUMEROENLETRAS(1250;"pesos";"centavos";FALSO;"";VERDADERO)
B1fx=NUMEROENLETRAS(1250;"pesos";"centavos";FALSO;"";VERDADERO)
A B
1 1250 Mil doscientos cincuenta pesos
Factura
Comprueba: B1 debe mostrar el texto con la primera letra en mayúscula y sin decimales (porque 1250 es entero).

Elegir la moneda y la subdivisión correctas

Los argumentos Moneda y Subdivision se escriben entre comillas y admiten cualquier palabra. Cambia los valores según el país de la factura:

  • México: "pesos" y "centavos".
  • Perú: "soles" y "céntimos".
  • España y zona euro: "euros" y "céntimos".
  • Chile: "pesos" y "centavos".
  • Argentina: "pesos" y "centavos".
  • Paraguay: "guaraníes" y "céntimos".

Para 2.430,50 euros, la fórmula queda:

=NUMEROENLETRAS(2430,50;"euros";"céntimos";FALSO;"";VERDADERO)
Comprueba: el resultado debe leerse "Dos mil cuatrocientos treinta euros con cincuenta céntimos".

Forzar mayúscula inicial y añadir una coletilla

El argumento Iniciales controla la mayúscula del principio:

  • VERDADERO (recomendado en facturas): "Mil doscientos cincuenta pesos".
  • FALSO: "mil doscientos cincuenta pesos" (todo en minúscula salvo la moneda).

El argumento Adicional añade una coletilla fija al final, útil para el "Moneda Nacional" de los cheques mexicanos o el "M.N." tradicional:

=NUMEROENLETRAS(1250;"pesos";"centavos";FALSO;"M.N.";VERDADERO)
B1fx=NUMEROENLETRAS(1250;"pesos";"centavos";FALSO;"M.N.";VERDADERO)
A B
1 1250 Mil doscientos cincuenta pesos 00/100 M.N.
Factura
Comprueba: el texto debe terminar literalmente en "M.N." después de la fracción.

Decimales como texto o como fracción

El argumento Faccion decide cómo se escriben los decimales:

Valor de Faccion Resultado para 1250,50
FALSO "Mil doscientos cincuenta pesos con cincuenta centavos"
VERDADERO "Mil doscientos cincuenta pesos 50/100"

La forma 50/100 es la que suelen pedir los cheques y las facturas tradicionales.

Usar NumLetras sin instalarlo, en un solo libro

Si prefieres no instalar nada o quieres llevarte NumLetras en un USB, usa la versión .xlsm.

  1. Abre numletras.xlsm. Al abrirlo, Excel te preguntará si habilitas las macros: pulsa Habilitar contenido.
  2. En la celda A1 escribe el número, por ejemplo 1250.
  3. En B1 escribe la fórmula:

=NUMEROENLETRAS(A1;"euros";"céntimos";FALSO;"";VERDADERO)
  1. Guarda el libro como Libro de Excel habilitado para macros (extensión .xlsm) para que las macros se conserven.
B1fx=NUMEROENLETRAS(A1;"euros";"céntimos";FALSO;"";VERDADERO)
A B
1 1250 Mil doscientos cincuenta euros
Hoja1
Comprueba: al cambiar A1, B1 se actualiza sola al guardar o al pulsar F9.

Combinar NumLetras con MAYUSC y con un cálculo

La función se puede anidar con cualquier otra de Excel. Para una factura con IVA del 21 %, multiplica primero y convierte después, y si quieres el resultado todo en mayúsculas, envuélvelo en MAYUSC:

=MAYUSC(NUMEROENLETRAS(A1*1,21;"euros";"céntimos";VERDADERO;"";FALSO))
B1fx=MAYUSC(NUMEROENLETRAS(A1*1,21;"euros";"céntimos";VERDADERO;"";FALSO))
A B
1 1000 MIL DOSCIENTOS DIEZ EUROS 00/100
Hoja1
Comprueba: al poner 1000 en A1 debe leerse "MIL DOSCIENTOS DIEZ EUROS 00/100"; la palabra "cero" desaparece y queda solo la fracción 00/100.

Por qué NumLetras no aparece o devuelve error

Cuando la función no responde, casi siempre se trata de uno de estos tres motivos: el complemento está desactivado, la fórmula está en un archivo sin macros, o el .xlam es una versión vieja. Cada caso tiene su arreglo.

El complemento está desactivado al abrir Excel

Si NUMEROENLETRAS ha dejado de aparecer en el asistente, abre Programador > Complementos > Complementos de Excel y comprueba que la casilla NumLetras sigue marcada. Si Excel la desmarca al cerrar, ve a Archivo > Opciones > Complementos, abajo del todo elige Complementos de Excel en "Administrar" y pulsa Ir; márcala otra vez y acepta.

La fórmula devuelve #¿NOMBRE?

El error #¿NOMBRE? significa que Excel no reconoce la función. Pasa cuando escribes la fórmula en un libro .xlsx (que no admite macros) o en Excel para la web. La solución: o guardas el archivo como .xlsm, o abres el .xlsm que trae NumLetras integrado, o reinstalas el complemento .xlam. En Excel para la web, NumLetras no funciona: tendrías que automatizar con Scripts de Office.

B1fx=NUMEROENLETRAS(A1;"euros";"céntimos";FALSO;"";VERDADERO)
A B
1 1250 #¿NOMBRE?
Factura
Comprueba: si B1 muestra #¿NOMBRE?, abre el libro en el escritorio y comprueba la extensión; un .xlsx nunca ejecutará la función.

Los decimales salen en otro idioma o moneda

Si al convertir 1,50 el resultado dice "con cincuenta centavos" cuando esperabas "céntimos", o si la moneda es la que no toca, la versión del .xlam es antigua. Descarga la última versión desde la página del proyecto y vuelve a copiarla a la carpeta de complementos, sobrescribiendo el archivo anterior.

Lo que ya sabes hacer con NumLetras y el siguiente paso

  • Instalar el complemento .xlam y activar NUMEROENLETRAS desde el asistente de funciones.
  • Convertir importes con la moneda y la subdivisión de tu país: pesos, soles, euros, pesos chilenos, pesos argentinos o guaraníes.
  • Elegir decimales como texto ("cincuenta centavos") o como fracción ("50/100"), y añadir coletillas como "M.N.".
  • Usar la versión .xlsm en un solo libro y anidar NumLetras con MAYUSC o con un cálculo como el IVA.

El siguiente paso natural es montar una plantilla de recibo lista para imprimir: una hoja con el número, el importe en cifras calculado con una fórmula y la celda en letras generada con NUMEROENLETRAS, lista para imprimir o enviar por correo.

Datos comprobados en octubre de 2026.

Dudas al usar NumLetras en Excel

1. ¿Cómo convertir números a letras en Excel sin usar macros?

Sí se puede y sin tocar el VBA: la función NUMERO.ROMANO (=NUMERO.ROMANO(58)) trae de vuelta el número en cifras romanas directamente. Si lo que necesitas es escribir el número en letras del alfabeto (como «ciento cincuenta y dos»), no hay función interna; toca pasar por VBA o por un complemento como los que se ven más abajo.

2. ¿Cómo pasar un número a letras en Excel 2016?

NUMERO.ROMANO está en Excel 2016 y se usa igual que en las versiones modernas: =NUMERO.ROMANO(58) devuelve «LVIII». Si quieres el número escrito en palabras del idioma, en 2016 tampoco viene de fábrica, así que hay que recurrir a VBA o a un complemento como los explicados en este tutorial.

3. ¿Qué fórmula sirve para convertir números a letras en Excel 2010?

NUMERO.ROMANO funciona desde Excel 2010 con la misma sintaxis: =NUMERO.ROMANO(A2;0) escribe «LVIII» si A2 vale 58, y cambiando el segundo argumento del 0 al 4 consigues las formas más resumidas o más largas. Para el número en letras del alfabeto, en 2010 no hay fórmula interna y necesitas un complemento o una función propia en VBA.

4. ¿Cómo se instala el complemento NumLetras para convertir números a letras?

Se baja el archivo .xla o .xlam, se mete en la carpeta AddIns del usuario y después se activa desde Archivo > Opciones > Complementos > Ir, marcándolo en la lista. Una vez activo, aparece la función NumLetras() en cualquier hoja y basta con escribir =NumLetras(A2) para obtener, por ejemplo, «doscientos quince».

5. ¿Cómo convertir números a letras en Excel con pesos mexicanos?

Con la fórmula =NumLetras(A2) + " pesos " + NumLetras.Centavos(A2) + "/100 M.N." armas la cadena completa para un recibo en pesos mexicanos. La primera parte escribe los pesos en letras y la segunda los centavos con el «/100 M.N.» final, todo en una sola celda lista para imprimir o concatenar.

Fuentes

  1. MicrosoftAlguien tiene la plantilla para convertir números a letras, pero debe …consultado el 12/10/2026