EXCEL: Convertir números a letras

Ariel Palazzesi . Vista 741602 veces

Hoy te proponemos escribir una “macro” para Microsoft Excel que te permitirá expresar números como su equivalente en letras. Se trata de una función muy buscada y que no viene “de serie” en la planilla de cálculo. En NeoTeo te mostraremos, paso a paso, como puedes escribirla tu mismo.


  • Una macro para Excel. Una macro para Excel.

    Todos los que utilizamos la planilla de cálculo de Microsoft en algún momento nos hemos topado con la necesidad de convertir importes expresados como números (“138.55 €”) a su equivalente en letras (“ciento treinta y ocho euros con cincuenta y cinco centavos.”).

    Este tipo de conversión es casi indispensable cuando utilizamos Excel en labores relacionadas con la confección de facturas, presupuestos, liquidación de recibos de haberes, trabajos contables, emisión de comprobantes con importes o cualquier otra ligada al manejo de importes. Aunque no siempre sea obligatorio declarar los importes con ese formato, el hacerlo le da más “seriedad” a nuestros informes.

    Excel, al igual que los demás integrantes de la suite Microsoft Office, permite la construcción de macroinstrucciones sumamente complejas, utilizando un lenguaje llamado Visual Basic para Aplicaciones (o VBA), que, como su nombre lo indica, es muy similar al Visual Basic.

    Aprovechando lo que hemos aprendido en nuestro tutorial sobre Visual BASIC 2005, en especial lo que se refiere a las instrucciones de control de flujo del programa, podemos escribir una macro que realice la conversión mencionada en Excel.

    Escribiendo la macro
    Para escribir una macro, necesitamos en primer lugar abrir el editor de VBA que tiene incluido Excel. Para ello, como puede verse en la figura siguiente, vamos al menú principal de la aplicación y desde allí seleccionamos la opción “Herramientas”, luego “Macro” y del submenú que se abre hacemos clic en “Editor de Visual Basic”. (ALT-F11 realiza la misma acción).

    ALT-F11 realiza la misma acción. ALT-F11 realiza la misma acción.

    Editor de VBA. Editor de VBA.

    Como puede verse en la imagen de la derecha, el editor de VBA, que se parece mucho a lo visto en nuestro tutorial de VB, propone cuatro ubicaciones para (“Hoja1”, “Hoja2”, “Hoja3” y “ThisWorkbook”) el código que vamos a escribir.

    Le damos doble clic a la opción “ThisWorkbook”, y el editor tomará este aspecto:
     

    Listos para comenzar a trabajar. Listos para comenzar a trabajar.

    En la sección en blanco que aparece deberemos pegar el código que te mostramos al final de este artículo, o descargar esta planilla de ejemplo.

    Descargar  Planilla de ejemplo

¿Y tú, qué opinas?

  • #1 <a href="../../foro/member.php?u=8686" target="_self">derg</a>
    derg lunes, 30 de junio de 2008, 15:45

    Ariel, me parece que la función que generaste está buena como ejemplo, pero si no vas a explicar el funcionamiento deberías hacerla para todos los valores representables posibles (que no son tantos como parece).

    Responder >> Attention Minus Plus Votos: 9 de 17
  • #2 <a href="../../foro/member.php?u=6721" target="_self">marshall_260</a>
    marshall_260 lunes, 30 de junio de 2008, 15:50

    #1Hola amigo!
    Es que la funcion sirve para cualquier valor!
    Funciona desde 0.01 euro a 999.999.99 euros, más que suficientes para cualquier uso. Si necesitas valores superiores al millon de euros, puedes modificar a num2let() para que haga un llamado mas a la otra funcion, y podrias utilizar valores de hasta 1000 millones. (casi que no puedo imaginar tanto dinero junto.. :P )

    Saludos!

    Responder >> Attention Minus Plus Votos: 2 de 10
  • #3 <a href="../../foro/member.php?u=2050" target="_self">11111</a>
    11111 miércoles, 02 de julio de 2008, 15:05

    Recuerden habilitar los macros en Excel, sino no funciona.

    Responder >> Attention Minus Plus Votos: 11 de 17
  • #4 wengpeng
    wengpeng jueves, 03 de julio de 2008, 14:57

    #2Vi tu plantilla, e intente modificar a Num2let() pero como macro solo me sale ordenar concepto y la macro no esta desarrollada, como modifico la función para cambiar Euro por Dólares. Gracias


    Responder >> Attention Minus Plus Votos: 13 de 21
  • #5 <a href="../../foro/member.php?u=9323" target="_self">emmanuel_01</a>
    emmanuel_01 domingo, 06 de julio de 2008, 20:14

    Hola Ariel,
    la macro funciona a la perfeccion unicamente hay un pequeño fallo que es que cuando escribes "1234" pone "un mil doscientas treinta y cuatro". ¿Como podria hacer para suprimir el "un", de la expresion? Gracias

    Responder >> Attention Minus Plus Votos: 1 de 7
  • #6 Hugo Hernandez
    Hugo Hernandez viernes, 11 de julio de 2008, 18:38

    #5Hola Ariel mi nombre es Hugo y soy contador, quiero decirte que la expresión "un mil" es correcta y más cuando se habla en términos monetarios, sólo que tenemos la mala costumbre de omitir el "un" en los textos y en el habla.

    Si puedes corrobora lo que te digo en algún billete de 1,000.00, incluso cuando son dollares dice "one tousand dollars" (un mil dólares).

    No hay que hacer esa corrección a la macro.

    Responder >> Attention Minus Plus Votos: -2 de 2
  • #7 <a href="../../foro/member.php?u=6721" target="_self">marshall_260</a>
    marshall_260 viernes, 11 de julio de 2008, 18:54

    #6Hola Hugo!
    Gracias por la aclaración.

    Saludos.

    Responder >> Attention Minus Plus Votos: -2 de 6
  • #8 <a href="../../foro/member.php?u=11367" target="_self">FERNENDUKI</a>
    FERNENDUKI sábado, 09 de agosto de 2008, 20:51

    Esta bastante bien pero necesito que me ponga la cantidad en pesos, como le hago??????

    Responder >> Attention Minus Plus Votos: 9 de 13
  • #9 <a href="../../foro/member.php?u=13271" target="_self">haccavallo</a>
    haccavallo martes, 09 de septiembre de 2008, 02:45

    Hago todos los pasos que me aparecen en este tutorial y no logro nada cuando escribo la formula me aparece el mensaje NOMBRE con unos signos.Ayuda por fa

    Responder >> Attention Minus Plus Votos: 8 de 18
  • #10 rosita
    rosita viernes, 12 de septiembre de 2008, 20:00

    no puedo ver el resultado, no me funciona, he habiltado las macros y nada
    gracias
    rosita

    Responder >> Attention Minus Plus Votos: -2 de 8
  • #11 Abraham
    Abraham miércoles, 24 de septiembre de 2008, 21:53

    Chequen este complemento
    Funciona para pesos y dolares hasta 100 digitos
    http://galeon.com/excelmacros/NumeroALetras.xla

    Responder >> Attention Minus Plus Votos: -1 de 5
  • #12 levi
    levi lunes, 20 de octubre de 2008, 19:45

    Como estamos???
    Una pregunta.
    Necesitaria saber como puedo hacer para poder colocar varios filtros desplegables en una misma columna en excel

    Responder >> Attention Minus Plus Votos: 2 de 4
  • #13 <a href="../../foro/member.php?u=14863" target="_self">jesucristo</a>
    jesucristo jueves, 30 de octubre de 2008, 00:28

    Hola amigos, saludos a todos, les escribo desde la hermosa República de Colombia, es un placer comentar con ustedes acerca de la "macro" (coloco las comillas porque en realidad es una función o fórmula para los cálculos de excel y que no viene incluida en él) de la que escriben ustedes para convertir una cantidad expresada en dígitos con su correspondiente valor en texto.

    Debido a mi trabajo, donde de manera corriente hay que llenar planillas de excel, y el valor final hay que expresarlo en letras, decidí - al notar la falta de esta función en excel - escribirla yo mismo. A medida que escribía el código noté fallas en él, cuando lo probé, noté fallas como las que describen:
    ...
    Leer más

    Responder >> Attention Minus Plus Votos: 7 de 9
  • #14 <a href="../../foro/member.php?u=14863" target="_self">jesucristo</a>
    jesucristo viernes, 31 de octubre de 2008, 21:19

    Hola a todos de nuevo, recibí una corrección a mi comentario de ayer, efectivamente, la cantidad 999.999'999.999 se transcribe "novecientos noventa y nueve mil novecientos noventa y nueve millones novecientos noventa y nueve mil novecientos noventa y nueve pesos MLCTE".

    Atte.

    David M. Uribe

    Responder >> Attention Minus Plus Votos: 1 de 3
  • #15 <a href="../../foro/member.php?u=14899" target="_self">jexus6</a>
    jexus6 viernes, 31 de octubre de 2008, 21:57

    #13david uribe yo si ocupo que me des toda la formula te lo agradeceria si me la mandas por este mismo medio gracias

    Responder >> Attention Minus Plus Votos: 0 de 4
  • #16 <a href="../../foro/member.php?u=14899" target="_self">jexus6</a>
    jexus6 viernes, 31 de octubre de 2008, 22:19

    porfa si la ocupo es algo urgente

    Responder >> Attention Minus Plus Votos: -1 de 1
  • #17 perafanu
    perafanu jueves, 06 de noviembre de 2008, 17:41

    Hola quien me podría decir que puedo hacer:
    Quiero convertir números a letras en excel 2008 de Mac los necesito para un formato de cheques y facturación que me recomiendan hacer.

    Perafanu.

    Responder >> Attention Minus Plus Votos: 3 de 5
  • #18 omar
    omar miércoles, 12 de noviembre de 2008, 21:19

    Buenas tardes Sres. me confirmar bien como son los pasos para que la cifra de un total la pueda escribir en letras porque le busque de pie a pa pero no le encuentro la vuelta habra alguien que me explique desde el comienzo para ver si falle en algun paso desde ya gracias

    Responder >> Attention Minus Plus Votos: 3 de 3
  • #19 Jaime H Daza
    Jaime H Daza jueves, 13 de noviembre de 2008, 11:56

    #13Hola david, soy Igualmente un Colombiano mas, pero haciendo patria desde el exterior, trabajo en Guinea Ecuatorial, Africa, me gustaria tener tus instrucciones para convertir en excel numeros a letras, seria de gran ayuda para mi labor como contable en la empresa con la que trabajo, si te es posible me envias la instruccion para cambiarle" pesos " por " Fcos Cfas " la moneda corriente del africa central.
    Mi E-mail travesuras58@hotmail.com
    jaimehdaza@gmail.com

    Un abrazo de paisano.
    Agradecido:


    JAIME HUGO DAZA PAZ

    Responder >> Attention Minus Plus Votos: 0 de 2
  • #20 martin
    martin miércoles, 19 de noviembre de 2008, 22:14

    hola soy martin, oye un favorzaso mira soy contador, pero quiero covertir un archivo de excel a texto, pero no se como utilizar y aplicar el macro para poder realizar este proceso, pero me puedas ayudar muchas gracias

    Responder >> Attention Minus Plus Votos: 8 de 8
  • « «« Anterior123456Siguiente »» »
    Cargando...Cargando...

  • nuevo comentario
    Nombre

    Campo obligatorio

    Email

    Escriba una dirección de correo electrónico con el formato sunombre@ejemplo.com.

    Campo obligatorio

 
Ir arriba