Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés. Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Sr. Gallegos reciba usted una doble felicitación de mi parte: en primer lugar por la excente macro desarrollada para convertir números a letras y en segundo lugar por su generosidad para compartirla. Le pregunto: porqué la macro no aparece en la ventana de macros?
Gracias Jorge Gallegos, la verdad no se programar en visual pero se algo de programacion en la cual modifique algunos datos y ahora ya puedo usar esa funcion, si hubiese mas puntuacion de 10 votaria por mas, porque fue de mucha utilidad,
MUCHAS GRACIAS
Guadalupe Leija Flores [email protected] <-- Yo soy el autor de mi conversor, lo hice yo mismo, y a ti te lo mande desde mi buzon, si quieres te mando tambien el conversor para Access, Visual, SQL, y otros, digo por si quieres tambien modificarlos y compartirlos con tu nombre y dejando a un lado al verdadero Autor. No se vale, pero cuestion de etica, Saludos.
Suerte!!!
Gracias por el codigo es bastante bueno.
Excel, menu herramientas, Macros, editor de Visual Basic.
En el modulo en la funcion llamada letra por el final de la funcion modifique el nombre de la moneda de su pais ejemplo LEMPIRAS moneda de Honduras:
If Millones & Miles & Cientos & Decimales = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " LEMPIRAS CON" & Trim(Decimales) & "/100 CENTAVOS"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " LEMPIRAS CON" & Trim(Decimales) & "/100 CENTAVOS"
End If
lo que no me gusta es que E Gallegos dice que es su codigo y que es una macro. Dos mentiras es una Function del emulador de VB que tienen Office no una MACRO y dos no es un codigo que es desarrollado por el. ABAJO ESTA COMO MODIFICARLO PARA PONER LA MONEDA DE CADA PAIS.
Mira el código en si funciona de perlas.
El problema es que no traduce las cantidades "redondeadas" por Excel. Ejemplo
Si el total de la factura es 15.255,64. eso se redondea a 15.256. la función proporcionada no acepta el redondeo hacia una unidad mas.
Saludos
Miren independientemente de quin lo realzo el codigo esta muy bueno; y creo que en realidad esa es la idea de esta pagina; compartir.-
Un abrazo y gracias.-
Muy buena macro, solo con un pequeño detalle, cuando pongo la cantidad sin decimales, me pone nada mas la cantidad, perfecto, pero por que no me pone "PESOS 00/100 M.N." me podrian ayudar?.... mi correo es [email protected]
Antes de sufrir algun comentario sobre la antiguedad del post alego que lo escribo porque el codigo funciona y alguien lo puede descargar y encontrarse con lo mismo.
Hay que modificar lo siguiente:
(como no se puede subrallar, lo pongo asi)
ANTES
If Millones & Miles & Cientos & Decimales = \\\"000000\\\" Then
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(Decimales) & \\\"/100 CENTAVOS\\\"
Else
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(Decimales) & \\\"/100 CENTAVOS\\\"
End If
DESPUES
If Millones & Miles & Cientos & Decimales = \\\"000000\\\" Then
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(cadDecimales) & \\\"/100 CENTAVOS\\\"
Else
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(cadDecimales) & \\\"/100 CENTAVOS\\\"
End If
No hubiera sufrido ningun comentario puesto que el ultimo fue hace un mes y aparte que las barras sobran se han puesto al enviar el comentario. Lo que hay que cambiar es "decimal" por "caddecimal"
Tengo un Problema cuando lso centavo estan en 00 NO pone al final 00/100 pesos M.N. ya le estuve buscando y no lo hace podrian ayudarme pro favor, fuera de eso todo esta genial saludos....
Muchas gracias por haber compartido esto, he buscado varios macros y la mayoría tiene muchos errores. En cuanto a que si se tiene .00 en los decimales, eso lo arregle desde Herramientas --> Macro --> Editor de Visual Basic, le das CONTRO+F y busca la palabra PESOS, arriba hay una parte donde menciona "00" y no tiene la parte de que escriba PESOS Y M.N. hay que ponérsela:
If Decimales = "00" Then
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO "
Else
If Miles & Cientos = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
Else
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
End If
letra = Trim(Cadena)
End If
Else
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO " & "CON " & Trim(caddecimales)
Else
If Millones & Miles & Cientos & Decimales = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
Else
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
End If
gracias por darnos trucos y hacernos la vida mas fasil, esta tecnica de conversor de numero a letra la busque desde hace mucho tiempo y no habia tenido respuesta gracias por su ayuda, mexico d.f.
Buena la macro, sin embargo se confunde con los numeros 1.000.000, 1.000.000.000 y sucesivamente despues de cada mil millones y el mismo numero mas 100 millones. los primeros los reconoce como 0 cero y los segundos como espacio.
Hola, te felicito por que me parece muy interesante la macro, aunque tuve un problema, no me sirve para "un millon", que puedo hacer para solucionar este inconveniente.
Exelente aca en chile no manejamos decimales para el dinero por lo que no tengo ningun problema y me ahorro estar escribiendo a cada rato la cifra en letras
na... me quiero matar... hace 2 años que vengo trabajando con precios, con numero y letra, y yo siempre lo puse a mano.. jeje.. que comando facil.. gracias
ESTA EXCELENTE Y ES FACIR DE PASAR A OTROS LIBORS EN EXCEL 2007 VIA VISUAL BASIC.
SOLO QUE NO SE COMO CAMBIAR EL CODIGO PARA QUE EN CASO DE QUE LA CANTIDAD NO TENGA DECIMALES DE TODAS FORMAS LE PONGA PESOS 00/100 M. N., COMO LE HAGO?
FELICIDADES¡¡¡¡¡¡¡¡¡¡¡¡¡
Buen trabajo pero le encuentro las siguientes contras:
si el nº es mayor a mil millones no da error y da el valor en letras hasta las 9 cifras enteras solamente
cuando el numero es decimal debería aparecer la cantidad decimal en letras
si el nº es decimal o sea por ej. 0.25 no muestra bien 25 centavos
Gracias por la valiosa información. Quisiera saber como se ajusta el codigo para que identifique los MILES DE MILLONES 1.000'000.000- y Superiores. Saludos
El problema es mucho más complejo de lo que se presenta aquí. Existen más opciones válidas por la Real Academia, la construcción del femenino y demás. Vean la aplicación que lo resuelve prácticamente todo:
ayuda no se como utilizar el codigo y para convertir los numeros
Responder
José Atupaña
16 de Diciembre del 2014
He probado la codificacion y funciona correctamente, quiero conocer como converti numeros decimales a texto GRACIAS, SALUDOS
Responder
Wesly Sanchez
22 de Enero del 2015
Muy buen trabajo!! Funciona muy bien! Personalicé la unidad monetaria. Lo unico es que la unidad monetaria la muestra solo cuando es un número con decimal. Cuando es número entero no muestra ese dato. De lo contrario me funciona!!
Responder
karol
9 de Marzo del 2015
por favor yo solo quiero que salga los entereos con decimales sin el nombre de la moneda x ejem 3,19; tres con diecinueve centesimos asi nada mas ayuda x fa
Responder
Luis
25 de Abril del 2015
Mil gracias por compartir la información, muy valiosa. Sigan adelante
Responder
jacinto de argentina
29 de Julio del 2015
estimados, esta buena el codigo pero lo probe y tengo un problema con los centavos, aparte puse 1,35 y me puso uno pesos con 35/100 m.n., con lo cual no puedo usarla. esta buena pero le falto un poquito
Responder
CESAR
11 de Abril del 2016
TENGO UNA DUDA Y NO ENCUENTRO RESPUESTA EN EL CASO DE CONVERTIR
15.02 QUINCE COMA CERO DOS
Responder
Ratakansa
26 de Agosto del 2016
Me encanto este macro, bastante sencillo y realiza lo que buscaba en un solo paso. Mi aporte al código para reconocer un millón (1.000.000) exacto y además colocar 00/100 con los números enteros, en mi caso está en Bs., pero se puede sustituir fácilmente por cualquier moneda local (cambie el nombre de la función por cuestiones de mi memoria)
Function CONVNUM(Numero)
Dim Texto
Dim Millones
Dim Miles
Dim Cientos
Dim Decimales
Dim Cadena
Dim CadMillones
Dim CadMiles
Dim CadCientos
Dim caddecimales
Texto = Round(Numero, 2)
Texto = FormatNumber(Texto, 2)
Texto = Right(Space(14) & Texto, 14)
Millones = Mid(Texto, 1, 3)
Miles = Mid(Texto, 5, 3)
Cientos = Mid(Texto, 9, 3)
Decimales = Mid(Texto, 13, 2)
CadMillones = CONVC(Millones, False)
CadMiles = CONVC(Miles, False)
CadCientos = CONVC(Cientos, True)
caddecimales = CONVD(Decimales)
If Trim(CadMillones) > "" Then
If Trim(CadMillones) = "UN" Then
CadMillones = ""
Cadena = Cadena & "UN " & CadMillones & "MILLON"
Else
Cadena = CadMillones & " MILLONES"
End If
End If
If Trim(CadMiles) > "" Then
If Trim(CadMiles) = "UN" Then
CadMiles = ""
Cadena = Cadena & "" & CadMiles & "MIL"
CadMiles = "UN"
Else
Cadena = Cadena & " " & CadMiles & " MIL"
End If
End If
If Trim(CadMiles) > "001" Then
CadMiles = "MIL"
End If
If Decimales = "00" Then
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO "
Else
If Miles & Cientos = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " Bs. CON " & Trim(Decimales) & "/100"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " Bs. CON " & Trim(Decimales) & "/100"
End If
CONVNUM = Trim(Cadena)
End If
Else
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO " & "CON " & Trim(caddecimales)
Else
If Millones & Miles & Cientos & Decimales = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " Bs CON " & Trim(Decimales) & "/100"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " Bs CON " & Trim(Decimales) & "/100"
End If
CONVNUM = Trim(Cadena)
End If
End If
End Function
Function CONVC(Texto, IsCientos As Boolean)
Dim Centena
Dim Decena
Dim Unidad
Dim txtCentena
Dim txtDecena
Dim txtUnidad
Centena = Mid(Texto, 1, 1)
Decena = Mid(Texto, 2, 1)
Unidad = Mid(Texto, 3, 1)
Select Case Centena
Case "1"
txtCentena = "CIEN"
If Decena & Unidad <> "00" Then
txtCentena = "CIENTO"
End If
Case "2"
txtCentena = "DOSCIENTOS"
Case "3"
txtCentena = "TRESCIENTOS"
Case "4"
txtCentena = "CUATROCIENTOS"
Case "5"
txtCentena = "QUINIENTOS"
Case "6"
txtCentena = "SEISCIENTOS"
Case "7"
txtCentena = "SETECIENTOS"
Case "8"
txtCentena = "OCHOCIENTOS"
Case "9"
txtCentena = "NOVECIENTOS"
End Select
Select Case Decena
Case "1"
txtDecena = "DIEZ"
Select Case Unidad
Case "1"
txtDecena = "ONCE"
Case "2"
txtDecena = "DOCE"
Case "3"
txtDecena = "TRECE"
Case "4"
txtDecena = "CATORCE"
Case "5"
txtDecena = "QUINCE"
Case "6"
txtDecena = "DIECISEIS"
Case "7"
txtDecena = "DIECISIETE"
Case "8"
txtDecena = "DIECIOCHO"
Case "9"
txtDecena = "DIECINUEVE"
End Select
Case "2"
txtDecena = "VEINTE"
If Unidad <> "0" Then
txtDecena = "VEINTI"
End If
Case "3"
txtDecena = "TREINTA"
If Unidad <> "0" Then
txtDecena = "TREINTA Y "
End If
Case "4"
txtDecena = "CUARENTA"
If Unidad <> "0" Then
txtDecena = "CUARENTA Y "
End If
Case "5"
txtDecena = "CINCUENTA"
If Unidad <> "0" Then
txtDecena = "CINCUENTA Y "
End If
Case "6"
txtDecena = "SESENTA"
If Unidad <> "0" Then
txtDecena = "SESENTA Y "
End If
Case "7"
txtDecena = "SETENTA"
If Unidad <> "0" Then
txtDecena = "SETENTA Y "
End If
Case "8"
txtDecena = "OCHENTA"
If Unidad <> "0" Then
txtDecena = "OCHENTA Y "
End If
Case "9"
txtDecena = "NOVENTA"
If Unidad <> "0" Then
txtDecena = "NOVENTA Y "
End If
End Select
If Decena <> "1" Then
Select Case Unidad
Case "1"
If IsCientos = False Then
txtUnidad = "UN"
Else
txtUnidad = "UNO"
End If
Case "2"
txtUnidad = "DOS"
Case "3"
txtUnidad = "TRES"
Case "4"
txtUnidad = "CUATRO"
Case "5"
txtUnidad = "CINCO"
Case "6"
txtUnidad = "SEIS"
Case "7"
txtUnidad = "SIETE"
Case "8"
txtUnidad = "OCHO"
Case "9"
txtUnidad = "NUEVE"
End Select
End If
CONVC = txtCentena & " " & txtDecena & txtUnidad
End Function
Function CONVD(Texto)
Dim Decenadecimal
Dim Unidaddecimal
Dim txtDecenadecimal
Dim txtUnidaddecimal
Decenadecimal = Mid(Texto, 1, 1)
Unidaddecimal = Mid(Texto, 2, 1)
Select Case Decenadecimal
Case "1"
txtDecenadecimal = "DIEZ"
Select Case Unidaddecimal
Case "1"
txtDecenadecimal = "ONCE"
Case "2"
txtDecenadecimal = "DOCE"
Case "3"
txtDecenadecimal = "TRECE"
Case "4"
txtDecenadecimal = "CATORCE"
Case "5"
txtDecenadecimal = "QUINCE"
Case "6"
txtDecenadecimal = "DIECISEIS"
Case "7"
txtDecenadecimal = "DIECISIETE"
Case "8"
txtDecenadecimal = "DIECIOCHO"
Case "9"
txtDecenadecimal = "DIECINUEVE"
End Select
Case "2"
txtDecenadecimal = "VEINTE"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "VEINTI"
End If
Case "3"
txtDecenadecimal = "TREINTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "TREINTA Y "
End If
Case "4"
txtDecenadecimal = "CUARENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "CUARENTA Y "
End If
Case "5"
txtDecenadecimal = "CINCUENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "CINCUENTA Y "
End If
Case "6"
txtDecenadecimal = "SESENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "SESENTA Y "
End If
Case "7"
txtDecenadecimal = "SETENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "SETENTA Y "
End If
Case "8"
txtDecenadecimal = "OCHENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "OCHENTA Y "
End If
Case "9"
txtDecenadecimal = "NOVENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "NOVENTA Y "
End If
End Select
If Decenadecimal <> "1" Then
Select Case Unidaddecimal
Case "1"
txtUnidaddecimal = "UNO"
Case "2"
txtUnidaddecimal = "DOS"
Case "3"
txtUnidaddecimal = "TRES"
Case "4"
txtUnidaddecimal = "CUATRO"
Case "5"
txtUnidaddecimal = "CINCO"
Case "6"
txtUnidaddecimal = "SEIS"
Case "7"
txtUnidaddecimal = "SIETE"
Case "8"
txtUnidaddecimal = "OCHO"
Case "9"
txtUnidaddecimal = "NUEVE"
End Select
End If
If Decenadecimal = 0 And Unidaddecimal = 0 Then
CONVD = ""
Else
CONVD = txtDecenadecimal & txtUnidaddecimal
End If
End Function
Responder
Ubaldo
25 de Octubre del 2017
Gracias por compartir tus conocimientos, me fu util esta función, Saludos.
Responder
Ladislao
31 de Mayo del 2018
hola, como le puedo quitar el 00/100? no me gusta que salga por favor si me ayudas?
Muchas gracias, busque por todas partes este codigo, hasta que lo encontre y con la gran suerte que esta en Bs.
Muy buen trabajo, felicitaciones
Responder
Ladislao
31 de Mayo del 2018
me salio bien todo pero quiero quitar la funsion 00/100, como se elimina para que no aparesca?
Responder
DENIS
31 de Mayo del 2018
hola, que buena macro, muchas gracias por este aporte, solo me falta una pequeña cosa alguno de ustedes podria indicarme o que tengo que hacer para que me ponga esto en letras 0101 quiero que le ponga CERO CIENTO UNO
el cero que lo coloque porfavor
Responder
DENIS
5 de Junio del 2018
hola alguien que este todavia en esta pagina para contestar????? ya hice esta consulta pero no me responden porfa
alguno de ustedes podria indicarme o que tengo que hacer para que me ponga esto en letras 0101 quiero que le ponga CERO CIENTO UNO
el cero que lo coloque porfavor
Responder
DENIS
5 de Junio del 2018
hablo del codigo que subio Jorge Eduardo Gallegos Torres
Comentarios sobre la versión: Versión 1 (76)
MUCHAS GRACIAS
Andres
Suerte!!!
E. Gallegos
Excel, menu herramientas, Macros, editor de Visual Basic.
En el modulo en la funcion llamada letra por el final de la funcion modifique el nombre de la moneda de su pais ejemplo LEMPIRAS moneda de Honduras:
If Millones & Miles & Cientos & Decimales = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " LEMPIRAS CON" & Trim(Decimales) & "/100 CENTAVOS"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " LEMPIRAS CON" & Trim(Decimales) & "/100 CENTAVOS"
End If
saludos,
Norberto.
El problema es que no traduce las cantidades "redondeadas" por Excel. Ejemplo
Si el total de la factura es 15.255,64. eso se redondea a 15.256. la función proporcionada no acepta el redondeo hacia una unidad mas.
Saludos
Un abrazo y gracias.-
si es copia me da lo mismo total lo vi aca
xauuu
Hay que modificar lo siguiente:
(como no se puede subrallar, lo pongo asi)
ANTES
If Millones & Miles & Cientos & Decimales = \\\"000000\\\" Then
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(Decimales) & \\\"/100 CENTAVOS\\\"
Else
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(Decimales) & \\\"/100 CENTAVOS\\\"
End If
DESPUES
If Millones & Miles & Cientos & Decimales = \\\"000000\\\" Then
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(cadDecimales) & \\\"/100 CENTAVOS\\\"
Else
Cadena = Cadena & \\\" \\\" & Trim(CadCientos) & \\\" LEMPIRAS CON\\\" & Trim(cadDecimales) & \\\"/100 CENTAVOS\\\"
End If
Muchas gracias
If Decimales = "00" Then
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO "
Else
If Miles & Cientos = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
Else
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
End If
letra = Trim(Cadena)
End If
Else
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO " & "CON " & Trim(caddecimales)
Else
If Millones & Miles & Cientos & Decimales = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
Else
Cadena = Cadena & " " & Trim(CadCientos) & " PESOS " & Trim(Decimales) & "/100 M.N."
End If
EXCELENTE!!!
Gracias
si te sirve para corregir.....
He probado con versiones anteriores de office pero al parecer no funciona con Officce 2000 Profesional la formula, agradeceria cualquier información.
Nuevamente Gracias.
Saludos
Osky
SOLO QUE NO SE COMO CAMBIAR EL CODIGO PARA QUE EN CASO DE QUE LA CANTIDAD NO TENGA DECIMALES DE TODAS FORMAS LE PONGA PESOS 00/100 M. N., COMO LE HAGO?
FELICIDADES¡¡¡¡¡¡¡¡¡¡¡¡¡
muy bueno este aporte
Muy buen archivo felicidades
si el nº es mayor a mil millones no da error y da el valor en letras hasta las 9 cifras enteras solamente
cuando el numero es decimal debería aparecer la cantidad decimal en letras
si el nº es decimal o sea por ej. 0.25 no muestra bien 25 centavos
Saludos
http://tip.dis.ulpgc.es/numeros
15.02 QUINCE COMA CERO DOS
Function CONVNUM(Numero)
Dim Texto
Dim Millones
Dim Miles
Dim Cientos
Dim Decimales
Dim Cadena
Dim CadMillones
Dim CadMiles
Dim CadCientos
Dim caddecimales
Texto = Round(Numero, 2)
Texto = FormatNumber(Texto, 2)
Texto = Right(Space(14) & Texto, 14)
Millones = Mid(Texto, 1, 3)
Miles = Mid(Texto, 5, 3)
Cientos = Mid(Texto, 9, 3)
Decimales = Mid(Texto, 13, 2)
CadMillones = CONVC(Millones, False)
CadMiles = CONVC(Miles, False)
CadCientos = CONVC(Cientos, True)
caddecimales = CONVD(Decimales)
If Trim(CadMillones) > "" Then
If Trim(CadMillones) = "UN" Then
CadMillones = ""
Cadena = Cadena & "UN " & CadMillones & "MILLON"
Else
Cadena = CadMillones & " MILLONES"
End If
End If
If Trim(CadMiles) > "" Then
If Trim(CadMiles) = "UN" Then
CadMiles = ""
Cadena = Cadena & "" & CadMiles & "MIL"
CadMiles = "UN"
Else
Cadena = Cadena & " " & CadMiles & " MIL"
End If
End If
If Trim(CadMiles) > "001" Then
CadMiles = "MIL"
End If
If Decimales = "00" Then
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO "
Else
If Miles & Cientos = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " Bs. CON " & Trim(Decimales) & "/100"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " Bs. CON " & Trim(Decimales) & "/100"
End If
CONVNUM = Trim(Cadena)
End If
Else
If Trim(CadMillones & CadMiles & CadCientos & caddecimales) = "UN" Then
Cadena = Cadena & "UNO " & "CON " & Trim(caddecimales)
Else
If Millones & Miles & Cientos & Decimales = "000000" Then
Cadena = Cadena & " " & Trim(CadCientos) & " Bs CON " & Trim(Decimales) & "/100"
Else
Cadena = Cadena & " " & Trim(CadCientos) & " Bs CON " & Trim(Decimales) & "/100"
End If
CONVNUM = Trim(Cadena)
End If
End If
End Function
Function CONVC(Texto, IsCientos As Boolean)
Dim Centena
Dim Decena
Dim Unidad
Dim txtCentena
Dim txtDecena
Dim txtUnidad
Centena = Mid(Texto, 1, 1)
Decena = Mid(Texto, 2, 1)
Unidad = Mid(Texto, 3, 1)
Select Case Centena
Case "1"
txtCentena = "CIEN"
If Decena & Unidad <> "00" Then
txtCentena = "CIENTO"
End If
Case "2"
txtCentena = "DOSCIENTOS"
Case "3"
txtCentena = "TRESCIENTOS"
Case "4"
txtCentena = "CUATROCIENTOS"
Case "5"
txtCentena = "QUINIENTOS"
Case "6"
txtCentena = "SEISCIENTOS"
Case "7"
txtCentena = "SETECIENTOS"
Case "8"
txtCentena = "OCHOCIENTOS"
Case "9"
txtCentena = "NOVECIENTOS"
End Select
Select Case Decena
Case "1"
txtDecena = "DIEZ"
Select Case Unidad
Case "1"
txtDecena = "ONCE"
Case "2"
txtDecena = "DOCE"
Case "3"
txtDecena = "TRECE"
Case "4"
txtDecena = "CATORCE"
Case "5"
txtDecena = "QUINCE"
Case "6"
txtDecena = "DIECISEIS"
Case "7"
txtDecena = "DIECISIETE"
Case "8"
txtDecena = "DIECIOCHO"
Case "9"
txtDecena = "DIECINUEVE"
End Select
Case "2"
txtDecena = "VEINTE"
If Unidad <> "0" Then
txtDecena = "VEINTI"
End If
Case "3"
txtDecena = "TREINTA"
If Unidad <> "0" Then
txtDecena = "TREINTA Y "
End If
Case "4"
txtDecena = "CUARENTA"
If Unidad <> "0" Then
txtDecena = "CUARENTA Y "
End If
Case "5"
txtDecena = "CINCUENTA"
If Unidad <> "0" Then
txtDecena = "CINCUENTA Y "
End If
Case "6"
txtDecena = "SESENTA"
If Unidad <> "0" Then
txtDecena = "SESENTA Y "
End If
Case "7"
txtDecena = "SETENTA"
If Unidad <> "0" Then
txtDecena = "SETENTA Y "
End If
Case "8"
txtDecena = "OCHENTA"
If Unidad <> "0" Then
txtDecena = "OCHENTA Y "
End If
Case "9"
txtDecena = "NOVENTA"
If Unidad <> "0" Then
txtDecena = "NOVENTA Y "
End If
End Select
If Decena <> "1" Then
Select Case Unidad
Case "1"
If IsCientos = False Then
txtUnidad = "UN"
Else
txtUnidad = "UNO"
End If
Case "2"
txtUnidad = "DOS"
Case "3"
txtUnidad = "TRES"
Case "4"
txtUnidad = "CUATRO"
Case "5"
txtUnidad = "CINCO"
Case "6"
txtUnidad = "SEIS"
Case "7"
txtUnidad = "SIETE"
Case "8"
txtUnidad = "OCHO"
Case "9"
txtUnidad = "NUEVE"
End Select
End If
CONVC = txtCentena & " " & txtDecena & txtUnidad
End Function
Function CONVD(Texto)
Dim Decenadecimal
Dim Unidaddecimal
Dim txtDecenadecimal
Dim txtUnidaddecimal
Decenadecimal = Mid(Texto, 1, 1)
Unidaddecimal = Mid(Texto, 2, 1)
Select Case Decenadecimal
Case "1"
txtDecenadecimal = "DIEZ"
Select Case Unidaddecimal
Case "1"
txtDecenadecimal = "ONCE"
Case "2"
txtDecenadecimal = "DOCE"
Case "3"
txtDecenadecimal = "TRECE"
Case "4"
txtDecenadecimal = "CATORCE"
Case "5"
txtDecenadecimal = "QUINCE"
Case "6"
txtDecenadecimal = "DIECISEIS"
Case "7"
txtDecenadecimal = "DIECISIETE"
Case "8"
txtDecenadecimal = "DIECIOCHO"
Case "9"
txtDecenadecimal = "DIECINUEVE"
End Select
Case "2"
txtDecenadecimal = "VEINTE"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "VEINTI"
End If
Case "3"
txtDecenadecimal = "TREINTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "TREINTA Y "
End If
Case "4"
txtDecenadecimal = "CUARENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "CUARENTA Y "
End If
Case "5"
txtDecenadecimal = "CINCUENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "CINCUENTA Y "
End If
Case "6"
txtDecenadecimal = "SESENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "SESENTA Y "
End If
Case "7"
txtDecenadecimal = "SETENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "SETENTA Y "
End If
Case "8"
txtDecenadecimal = "OCHENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "OCHENTA Y "
End If
Case "9"
txtDecenadecimal = "NOVENTA"
If Unidaddecimal <> "0" Then
txtDecenadecimal = "NOVENTA Y "
End If
End Select
If Decenadecimal <> "1" Then
Select Case Unidaddecimal
Case "1"
txtUnidaddecimal = "UNO"
Case "2"
txtUnidaddecimal = "DOS"
Case "3"
txtUnidaddecimal = "TRES"
Case "4"
txtUnidaddecimal = "CUATRO"
Case "5"
txtUnidaddecimal = "CINCO"
Case "6"
txtUnidaddecimal = "SEIS"
Case "7"
txtUnidaddecimal = "SIETE"
Case "8"
txtUnidaddecimal = "OCHO"
Case "9"
txtUnidaddecimal = "NUEVE"
End Select
End If
If Decenadecimal = 0 And Unidaddecimal = 0 Then
CONVD = ""
Else
CONVD = txtDecenadecimal & txtUnidaddecimal
End If
End Function
Muy buen trabajo, felicitaciones
el cero que lo coloque porfavor
alguno de ustedes podria indicarme o que tengo que hacer para que me ponga esto en letras 0101 quiero que le ponga CERO CIENTO UNO
el cero que lo coloque porfavor