Informática & Tecnología

En esta ocasión les traigo el código para convertir números a texto en Excel. El uso que puedan o deban darle ya se lo imaginarán. Los pasos a seguir son:

  1. Seleccionar la celda (vacía) donde se hará la conversión.
  2. Para Excel 2003, dar clic en Herramientas/Macro/Editor de Visual Basic; para Excel 2007, dar clic en la ficha Vista, opción Macro, Ver Macros, escribir el nombre y clic en crear. Con cualquiera de las dos versiones aparece una ventana de nombre Microsoft Visual Basic – Libro1, ahí es donde se pegará el siguiente código que debes DESCARGAR AQUÍ, antes borra las dos líneas de código que ahí aparecen.
  3. Guardas los cambios y cierras la ventana Microsoft Visual Basic.
  4. Da clic en el ícono de Excel Insertar función “fx”, aparece una ventana en la cual debes buscar CONVIERTENUMLETRA, cuando salga la seleccionamos y damos clic en aceptar, en la siguiente ventana escribimos la celda que contiene el número a convertir, por ejemplo “e5″.
  5. Ahora presionas ENTER y disfrútalo.

Como podemos observar cualquier cantidad escrita en números se convertirá a texto, esto es útil en muchas ocasiones, sobre todo cuando se trata de facturar o hacer notas de ventas con ayuda de Excel.

ACTUALIZACIÓN

Como una cortesía de nuestro amigo el Ing. Reséndiz, tenemos aquí una macro mejorada a la ya descrita. Es un archivo en Excel que no ha sido probado en la versión 2003, si alguien lo hace puede decirnos en los comentarios. Funciona correctamente en 2007 y 2010. Gracias Ing. Reséndiz por compartir la macro con todos. DESCARGAR AQUÍ.

ACTUALIZACIÓN (18/02/12)

Les comento a todos los que les da el problema de UN MIL UNO y algunos otros, que estos han sido corregidos, solo que por falta de tiempo no pude ponerlos antes, aquí en este enlace comparto con todos un ejemplo de factura con Código Bidimensional (CBB) en el cual está la macro modificada y funcionando correctamente, al menos hasta ahora, si encuentran algún error no olviden ponerlo en los comentarios.

¿Te ha funcionado la macro?

Deja un comentario y visita mis otros post.

533 respuestas a Convertir números a texto (letras) en Excel

  • Rodrigo dice:

    Hola soy de Paraguay, aqui no usamos centavos, como hago para que un monto redondeado me salga como tiene que ser? por ejemplo, si tengo 55,68 y en el formato de Celdas categoria Numero quito los decimales el numero quedaria 56 y en letras debe ser (Cincuenta y seis) pero de igual manera sale (cincuenta y cinco con 68/100) he logrado quitar el “68/100″ pero igual imprime (cincuenta y cinco) cuando ya esta redondeado a 56.
    Espero puedas entender la consulta.
    Gracias

  • FABIO dice:

    HOLA AMIGO, EXCELENTE MACRO, ME SERVIRÁ DE MUCHO, SOLO TENGO DOS PREGUNTAS, COMO PUEDO LOGRAR SOLVENTAR EL PROBLEMA CUANDO EL NUMERO ES 1000? Y COMO PODRÍA LOGRAR QUE LOS DECIMALES ME LOS PRESENTARA ESCRITO TAMBIÉN?

  • Helen dice:

    No logro incluir la macro… que estoy haciendo mal.

    Habro en: Vista, Macros, pero allí me quedo trabada y de allí no sabría como usar la macro.

    Help please!!!!

  • Yolanda Flores. dice:

    FELICIDADES, para nosotros nos ayudan mucho a los que no somos expertos en el manejo de excell y sigan compartiento sus conocimientos

  • tataiana dice:

    hola soy de venezuela te envio un gran beso y un agradecimiento por tan linda y productiva pagina espero seguir contacto con ustedes desde venezuela -merida

  • Jose Luis dice:

    Interesante, soy docente, por tanto la necesito para asentar notas. Por ejemplo [8.6 ocho, seis] o [10.0 diez, cero]. He intentado sacar lo de pesos pero después ya no me vale la macros… si me podrías ayudar desde ya agradecido.

  • miguelon dice:

    oye tambien una pregunta como puedo hacer para tener base de datos de clientes, inventarios etc… ya que el otro dia en una pagina vi q se pueden ir guardando en acces y se puedan consultar y modificar y asi sucesuvamente

    gracias

  • miguelon dice:

    hola necesito el macro para hacer facturas en mi negocio ya le he intentado y al poner $ 1000.00 me sale “un miluno y creo que no esta bien espero me puedas apoyar mandandome el macro correcto
    Gracias

  • Juan Carlos Velásquez dice:

    No he podido dar con una falla, que tengo en la macro, me dice que “ERROR DE COMPILACIÓN” “NO SE HA DEFINIDO SUB O FUNCIÓN” y se para en esta línea
    TEXTO = FormatNUMBER(TEXTO, 2)

  • Tatiana dice:

    Muchas gracias por el codigo, me fue muy util, necesitaba con decimales pero ya lo arregle para que me funcionara como lo necesitaba muchas gracias

  • ALEJANDRO dice:

    De mucha utilidad. He corregido algunos datos. Ejemplo: al escribir la cantidad de 1,000.00 aparecia “un mil uno peso 00/100 m.n” se corrigio para que aparesca “un mil pesos 00/100 m.n”

    cuando se escribia la cantidad 1 (uno) aparecia “uno peso 00/100 m.n” se corrigio para que aparesca “un peso 00/100 m.n”

    cuando se escribia una cantidad cerrada en millones ejemplo; 3,000,000.00 aparecia “tres millones pesos 00/100 m.n” se corrigio para que aparesca “tres millones de pesos 00/100 m.n”

    aun falta lograr que aparescan los parentesis si lo obtengo se los hare llegar. ahora solo deseo saber como subir esta corrección a este foro…

    saludos

  • ALEJANDRO dice:

    de mucha utilidad este he corregido algunos datos. ejemplo: al escribir la cantidad de 1,000.00 aparecia “un mil uno peso 00/100 m.n” se corrigio para que aparesca “un mil pesos 00/100 m.n”

    cuando se escribia la cantidad 1 (uno) aparecia “uno peso 00/100 m.n” se corrigio para que aparesca “un peso 00/100 m.n”

    cuando se escribia la cantidad de cerrada en millones ejemplo; 3,000,000.00 aparecia “tres millones pesos 00/100 m.n” se corrigio para que aparesca “tres millones pesos 00/100 m.n”

    aun falta lograr que aparescan los parentesis si lo obtengo se los hare llegar. ahora solo deseo saber como subir esta corrección a este foro…

    saludos

  • Pilar dice:

    Hola!
    Me funciona todo perfectamente, icnluso el cambio de pesos a euros. Pero me gustaría, que creo que ya lo han comentado, saber cómo puedo hacer que los decimales salgan también en letra, si es posible.
    Muchas gracias.
    Un saludo

  • mao dice:

    gracias por este aporte muy importante pero no he podido sacar la cifra 1000 pesos en letras por que se me antepone un mil, si alguin me puede colaborar les agradesco

    • Ing Reséndiz dice:

      Hola Mao,
      Hola Mao,
      La manera correcta es “un mil pesos 00/100 M.N.”… Sin importar que sea “mil”, el “un mil” debe ser escrito, se ha popularizado el hecho de omitir la primera palabra, pero no es contablemente correcto…

      Esto se debe a que la finalidad de poner por escrito la cantidad en número es evitar errores de interpretación (pues no todos escribimos de manera clara), por lo que la manera escrita debe ser lo más explícita posible…

      Es por ello que aún cuando la cantidad no contenga centavos… debe manifestarse por escrito este hecho: 00/100 (cero centavos) ..

      Espero que te sirva la información.

  • Ing. Reséndiz dice:

    Hola NAN,
    Tengo una macro que puede servirte para lo que necesitas, escribe al correo que esta en comentarios anteriores donde ya lo he dejado.

    Saludos

  • NAN dice:

    Hola, gracias por compartir tus conocimientos a todos los que necesitamos, sabes que busque casi media mañana y no daba, es muy claro tus indicaciones, te pido un favor, deseo utilizar en notas escolares asi: 19,50 seri en letras (Diecinueve, Cincuenta). Desde ya te anticipo mil gracias por tu ayuda.
    Nancy

  • Ing. Reséndiz dice:

    Hola COK escribeme al correo que ya he dejado en comentarios anteriores y con gusto te envío la macro que puedes ajsutar a tus necesidades.

    Saludos

  • COK dice:

    Hola!!! Estoy buscando esto mismo. Es EXCELENTE este post.
    Pero, necesito uno que NO ponga moneda y si puede ser en lugar de poner los decimales en números (25/100) también escriba el numero, es decir: si es 658.30 ponga SEISCIENTOS CINCUENTA Y OCHO CON TREINTA
    Es posible???
    He intentado modificar el código, pero no doy con ello!!!
    GRACIAS

  • fabiola dice:

    hola me ayudo mucho este codigo sin embargo tiene un error:
    cuando se convierte este dato 1000
    aparece un mil uno …
    chequenlo
    yo no se de programación pero `por ahi aparece un linea que dice UNO PESOS, le quite el uno y ya quedo

  • Ing. Reséndiz dice:

    Frnak,

    En la nota que te puse me equivoque, quise decir que no debe darte problemas el programa que descargas, sólo que no lo escribí bien.

    Saludos

  • Ing. Reséndiz dice:

    Hola Guillermo Barriga,

    El programa que pides para calificasiones deves enviarme un correo a resgros@hotmail.com para responderte a tu e-mail enviandote el programa que pides.

    Para Frank del comentario 122, sólo puedo decirte que sigas las indicasiones que aparecen en el mismo libro de excel y debe darte problema o mandame un correo y te envío el libreo de excel contodos los datos de como usarlo.

    gracias y saludos a toda la comunidad en especial al buen amigo Vateos.

  • Frank dice:

    chicos tengo office 2007 y no me funciono dice que se ha detectado un nombre ambiguo CONVIERTENUMLETRA
    me gustaria poderla ejecutar pero no lo he logrado hasta hoy

  • Ruben dice:

    Hola bateos agradezco mucho tu ayuda pero me da como reultado DIEZ punto cero y que quiero que me de es sólo DIEZ sin ningun otro dato, ojalá y me puedas ayudar o alguien del blog lo pueda hacer.

    gracias

    salu2

    Rubén

  • guillermo barriga dice:

    Necesito convertir las notas de mis alumnos a letras. Las notas a partir del 2,0 a 7,0. y cada una expresarla por ejemplo: 3,7 Tres, siete
    Gracias…..

  • Ruben dice:

    Hola tengo esta macro para calificasiones, sólo que no encuentro como hacer para que cuando sea 10 me ponga la frase ¡DIEZ! como maxima calificasion, todo lo demas funciona a la perfeccion, espero su ayuda entre los expertos de este blog.

    Salu2

    esta es la macro.

    Public Function np(R As Single) As String
    Dim d1 As String
    Dim d2 As String
    Dim i, k As Integer
    Dim R2, dif As Single
    R2 = R * 10
    dif = R2 – Fix(R2)
    If dif >= 0.5 Then R2 = R2 + 1
    R = Fix(R2) / 10
    d1 = Format$(R, “0.0″)
    i = Val(Left$(d1, 1))
    k = Val(Right$(d1, 1))
    d1 = digito(i)
    d2 = digito(k)
    np = d1 + ” punto ” + d2
    End Function

    Function digito(ByVal j As Integer) As String
    Select Case j
    Case 1
    digito = “uno”
    Case 2
    digito = “dos”
    Case 3
    digito = “tres”
    Case 4
    digito = “cuatro”
    Case 5
    digito = “cinco”
    Case 6
    digito = “seis”
    Case 7
    digito = “siete”
    Case 8
    digito = “ocho”
    Case 9
    digito = “nueve”
    Case 0
    digito = “cero”
    End Select
    End Function

  • Dulce dice:

    Hola! estuve checando el programa actualizado y lo que quiero es cambiar el resultado a otra celda, pero no puedo ver la fórmula en la celda c3, no me aparece dicha fórmula; de hecho solamente puedo escribir en la celda en donde coloco el número que quiero convertir y las demas celdas de la hoja están bloqueadas. No sé a qué se deba…alguien me puede orientar?

  • Alejandro dice:

    Muy buena..gracias por compartir…Al comentario #100 del Ing. Reséndiz, yo también le encargo la modificacion para las boletas de calificación

  • Ing. Reséndiz dice:

    Hola buen día,

    Mil gracia a Vateos, por darme la oportunidad de compartir las macros con la comunidad que visita este blog, estimado amigo una vez más mil gracias.

    Información
    Me dí a la tarea de revisar la macro con Microsoft Excel 2003 y funciona a la perfección, para todos aquellos que tienen esta versión de Excel no tienen de que preocuparse ya que funciona bien. Vateos expresa que también funciona a la perfección con Excel 2010, tengo además una macro más que llega hasta 9,999,999,999,999.99 funcionando excelente con decimales, está a su disposición en el correo ya mocionado en comentarios anteriores.

    Saludos Cordiales

  • Abraham B dice:

    Excelente ayuda, 100% entendible y práctico. Dónde puedo visualizar más códigos macro? Gracias por la ayuda.
    Saludos….

  • freddy dice:

    hola nose si podrias ayudarme, necesito saber como convertir numeros en texto en excel 2003, ya estoy volviendome loco tratando de hacerlo, espero tu respuesta gracias

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>