Ayuda con fórmula para convertir números a letras

Amig@. Tengo el siguiente problema:
He logrado implementar una plantilla (con macro incorporada) que me permite escribir un número y convertirlo a letras. Es decir: si dígito en A1: 1500000, gracias a la fórmula puedo convertirlo en B1 (por ejemplo) en: un millón quinientos mil pesos m/cte. La fórmula es perfecta; pero cuando escribo por ejemplo: ¿1000000 el resultado es un millón pesos m/cte. Ves? Sólo me queda faltando el conector "DE"; pues lo lógico sería que dijera un millón DE pesos m/cte.
Es decir, necesito retocar o complementar la fórmula de tal manera que cuando yo escriba números como 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000, 11000000 y así sucesivamente me respete el conector DE y el resultado en letras sea completo.
La fórmula con la que vengo trabajando es la siguiente:
=MAYUSC(NumLetra(A1;2;"pesos";"centavos";"con")&" "&"M/Cte.")&" "&"("&"$"&""&TEXTO(A1;"#.###,00")&""&")"
Claro, la solución más fácil es que donde dice "pesos" agregarle el conector DE para que quedara "de pesos" pero no sirve; pues si la dejo así, ¿cuándo escriba por ejemplo 1500000 el resultado es un millón quinientos mil de pesos m/cte. Ves? Me agrega el conector DE donde no debe ir.
O sea, necesito un condicional (me imagino) que cuando encuentre en A1 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000, 11000000 etc., me incluya el conector DE; de lo contrario, me respete la fórmula y no le coloque el conector "DE".
Si necesitas, podría enviarte la plantilla por E-mail. Mi correo es: [email protected]

4 respuestas

Respuesta
1
Por fórmula eso va a ser imposible, porque aunque añadamos un SI(,,,,,,,, solo nos admite 15, SI anidados. No encuentro otra solución que poner una macro ( que sería enorme como los posibles números) que compruebe en tu celda de numero 1000000 (un millón) :
1º Cuantos digitios tiene la cantidad en este caso 7
2º En función del numero de caracteres que compruebe que si todos son ceros menos el primero, otra para los dos primeros, otra para los 3 primeros... imagina hasta donde tendríamos que comprobar...
En fin yo te daría la forma para el calculo de 1000000 y tu implementas hasta donde quieras, si te animas a ello, ojo después de la macro la fórmula se borraría de tu celda quedaría solo el resultado.
Te dejo una página para que veas el tema de la función y como implementar lo que necesitas, será más explicito que mis explicaciones cuando veas el tamaño de las macros para que funcione:
http://www.necesitomas.com/node/61
>Un saludo
>Julio
PD: Si te ha servido puntúa y finaliza la consulta.
Respuesta
1
Te recomiendo descrgues una macro una función que cargue en mi página..
Esa función te convierte cualquier cantidad en letra sin necesidad de la fórmula..
Entra en
Entra al contenido de la página y me parece que es el primer tema..
Respuesta
1
Te voy a enviar un par de ejemplos para que veas si puedes solucionar tu problema
Respuesta
1
Mandame la planilla y te la reenvío.
De todas maneras esa fórmula ya existe en un complemento en internet. Estaba en euros y la modifique a pesos y a mi me funciona don el conector DE de forma correcta. No se si al enviarte un archivo con la fórmula pueda funcionarte sin tener instalado el complemento, tratare de buscar en el disco donde tengo el complemento para que lo instales. La única falencia del que poseo es que debo extraerle los centavos.
Respecto a la fórmula que creaste creo que es en el código donde debes modificar el conector. Con la condicional de múltiplos de 1000000 o silo tienes como unidades establecerlo en los n*unidad de millón.
Mandame la planilla si deseas.
[email protected]

Añade tu respuesta

Haz clic para o