La sorprendente fórmula para convertir números en letras

Cuando parece que ya nada nos sorprende, aparece esta fórmula para convertir números en letras, capaz de dejarnos con la boca abierta...
Convertir números en letras Excel

Cada día me gusta más trabajar con Excel. Aunque parezca que ya nada me podría sorprender, hoy lo ha hecho una consulta en el foro de la web. En ella alguien preguntaba cómo podría traducir el resultado de una fórmula a otro idioma.

En realidad la traducción es lo de menos. Lo que me dejó con la boca abierta fue la fórmula en sí:

Con esta fórmula puedes transformar números en letras (con formato de moneda).

Atención: de momento solo es válida para Excel 365, pues utiliza la función LET:

=LET(importe;A1;
QMillones;SI(importe>999999;ENTERO(importe/1000000));
QMiles;SI(importe>999;ENTERO(importe/1000)-QMillones*1000);
QCentenas;importe-ENTERO(importe/1000)*1000;
QEntera;ENTERO(importe);
QDecimal;REDONDEAR((importe-ENTERO(importe))*100;0);

centfin;SI(QDecimal=1;" céntimo";" céntimos");
eurfin;SI(QEntera=1;" euro";" euros");

matriz;ELEGIR({1;2;3;4};QMillones;QMiles;QCentenas;QDecimal);
calculo;LET(
centena2;ENTERO(matriz/100);
decena2;ENTERO((matriz-centena2*100)/10);
unidad2;ENTERO((matriz-centena2*100-decena2*10));

centenas;{""\"cien"\"doscientos"\"trescientos"\"cuatrocientos"\"quinientos"\"seiscientos"\"setecientos"\"ochocientos"\"novecientos"};
decenas;{""\" diez"\" veinte"\" treinta"\" cuarenta"\" cincuenta"\" sesenta"\" setenta"\" ochenta"\" noventa"};
unidades;{""\" un"\" dos"\" tres"\" cuatro"\" cinco"\" seis"\" siete"\" ocho"\" nueve"};
dieces;{"diez"\"once"\"doce"\"trece"\"catorce"\"quince"\"dieciseis"\"diecisiete"\"dieciocho"\"diecinueve"};
veintes;{"veinte"\"veintiuno"\"veintidos"\"veintitres"\"veinticuatro"\"veinticinco"\"veintiseis"\"veintisiete"\"veintiocho"\"veintinueve"};
tatantos;{""\" y un"\" y dos"\" y tres"\" y cuatro"\" y cinco"\" y seis"\" y siete"\" y ocho"\" y nueve"};

num_letra1;INDICE(centenas;1;centena2+1);
num_letra2;SI(centena2=1;num_letra1&"to";num_letra1);
num_letra3;num_letra2&INDICE(decenas;1;decena2+1);
num_letra4;SI(decena2=0;INDICE(unidades;1;unidad2+1);"");
num_letra5;SI(decena2=1;EXTRAE(num_letra3;1;LARGO(num_letra3)-4)&INDICE(dieces;1;unidad2+1);"");
num_letra6;SI(decena2=2;EXTRAE(num_letra3;1;LARGO(num_letra3)-6)&INDICE(veintes;1;unidad2+1);"");
num_letra7;SI(decena2>2;INDICE(tatantos;1;unidad2+1);"");
num_letra8;SI(decena2=1;num_letra5;SI(decena2=2;num_letra6;num_letra3&num_letra4&num_letra7));
SI(matriz=100;"cien";num_letra8));

txtMillones;SI(importe>999999;SI(QMillones=1;"un millón ";INDICE(calculo;1)&" millones ");"");
txtMil;SI(importe>999;SI(QMiles=1;"mil ";SI(QMiles=0;"";INDICE(calculo;2)&" mil "));"");
txtCent;SI(QEntera=0;"";SI(INDICE(calculo;3)="";"";INDICE(calculo;3))&eurfin);
txtDecimal;SI(INDICE(calculo;4)="";"";SI(QEntera=0;"";" con ")&INDICE(calculo;4)&centfin);

SI(importe=0;"cero euros";ESPACIOS(txtMillones&txtMil&txtCent&txtDecimal)))

Si en tu empresa rellenas pagarés, cheques o letras de cambio (¡qué antiguo es esto!), esta fórmula para convertir números en letras te vendrá muy bien.

¿Prefieres utilizar fórmulas más sencillas? Échale un vistazo a la biblioteca de funciones.

Si deseas conocer a fondo esta megafórmula de Excel, echa un vistazo a este tutorial de Ismael Romero donde te muestra su funcionamiento.

Cómo llegar a fin de mes con menos estrés gracias a Excel

Antes del día 15 puedes tener todos los objetivos mensuales completados. Y los que no, dejarlos programados para que se cumplan sin requerir de tu tiempo.

He preparado 7 de mis mejores trucos explicándote cómo lo hago. Deja tu correo abajo y te enviaré el primero de ellos.

Sergio

Sergio

Experto formador en Excel y Power BI con más de dos décadas de experiencia. Capacito a profesionales para optimizar su trabajo y ser más eficientes. Con un enfoque práctico y cercano, mi objetivo es ayudarte a dominar estas herramientas esenciales. Descubre mis formaciones.MVP de Microsoft 5 años consecutivos.

Cómo llegar a fin de mes con menos estrés gracias a Excel

Antes del día 15 puedes tener todos los objetivos mensuales completados. Y los que no, dejarlos programados para que se cumplan sin requerir de tu tiempo.

He preparado 7 de mis mejores trucos explicándote cómo lo hago. Deja tu correo abajo y te enviaré el primero de ellos.

Buscar

Últimos posts

¿De qué hablo aquí?

Cómo llegar a fin de mes con menos estrés gracias a Excel

Antes del día 15 puedes tener todos los objetivos mensuales completados. Y los que no, dejarlos programados para que se cumplan sin requerir de tu tiempo.

He preparado 7 de mis mejores trucos explicándote cómo lo hago. Deja tu correo abajo y te enviaré el primero de ellos.