¿como transformo un número en palabras?

28/07/2005 - 00:04 por Lucita | Informe spam
La función TEXTOBATH me permite trasformar de número a palabras, el problema
es que no puedo traducir dicho texto (aparece en tailandés)..

¿me pueden ayudar?


Gracias..

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
28/07/2005 - 00:12 | Informe spam
hola, Lucita !

La funcion TEXTOBATH me permite trasformar de numero a palabras
el problema es que no puedo traducir dicho texto (aparece en tailandes)...



-> si consultas la ayuda en linea en relacion con 'esa' funcion...
veras que SOLO 'sirve' para el idioma tailandes :-((
-> si revisas la consulta que hace Oscar [3 mensajes antes]...
[probablemente] te sera de utilidad :)

saludos,
hector.
Respuesta Responder a este mensaje
#2 bornjuice
28/07/2005 - 20:35 | Informe spam
Lucita ha escrito:
La función TEXTOBATH me permite trasformar de número a palabras, el problema
es que no puedo traducir dicho texto (aparece en tailandés)..

¿me pueden ayudar?


Gracias..



Lucita prueba esta macro, esta español, pero si lo deseas te la envio
en ingles.

Espero te sirva

Alvaro Silva

Function EnLetras(Valor, Optional ByVal Tipo As Byte = 1) As String '
Función Principal '
If Not IsNumeric(Valor) Then
EnLetras = "¡ La referencia no es valor o... 'excede' la
precisión !!!": Exit Function
End If: Dim Moneda As String, Fracs As String, Cents As Integer
If Int(Abs(Valor)) = 1 Then Moneda = " peso" Else Moneda = " pesos"
If Right(Letras(Abs(Int(Valor))), 6) = "illón " Or
Right(Letras(Abs(Int(Valor))), 8) = "illones " Then Moneda = "de" &
Moneda
Cents = Application.Round(Abs(Valor) - Int(Abs(Valor)), 2) * 100
If Cents = 1 Then Fracs = " centavo" Else Fracs = " centavos"
If Cents = 0 Then Fracs = "" Else Fracs = " con " & Letras(Cents) &
Fracs
EnLetras = Letras(Int(Abs(Valor))) & Moneda & Fracs
If Valor < 0 Then EnLetras = "menos " & EnLetras
If Tipo = 2 Then EnLetras = UCase(EnLetras) ' TODO EN MAYUSCULAS '
If Tipo = 3 Then EnLetras = StrConv(EnLetras, vbProperCase) ' Todo
Como Nombre Propio '
If Tipo = 4 Then EnLetras = UCase(Left(EnLetras, 1)) & Mid(EnLetras,
2) ' Primer letra en mayuscula SOLAMENTE '
EnLetras = "(" & EnLetras & ")"
End Function
Private Function Letras(Valor) As String ' Función Auxiliar [uso
'exclusivo' de la función 'principal'] '
Select Case Int(Valor)
Case 0: Letras = "cero"
Case 1: Letras = "un"
Case 2: Letras = "dos"
Case 3: Letras = "tres"
Case 4: Letras = "cuatro"
Case 5: Letras = "cinco"
Case 6: Letras = "seis"
Case 7: Letras = "siete"
Case 8: Letras = "ocho"
Case 9: Letras = "nueve"
Case 10: Letras = "diez"
Case 11: Letras = "once"
Case 12: Letras = "doce"
Case 13: Letras = "trece"
Case 14: Letras = "catorce"
Case 15: Letras = "quince"
Case Is < 20: Letras = "dieci" & Letras(Valor - 10)
Case 20: Letras = "veinte"
Case Is < 30: Letras = "veinti" & Letras(Valor - 20)
Case 30: Letras = "treinta"
Case 40: Letras = "cuarenta"
Case 50: Letras = "cincuenta"
Case 60: Letras = "sesenta"
Case 70: Letras = "setenta"
Case 80: Letras = "ochenta"
Case 90: Letras = "noventa"
Case Is < 100: Letras = Letras(Int(Valor \ 10) * 10) & " y " &
Letras(Valor Mod 10)
Case 100: Letras = "cien"
Case Is < 200: Letras = "ciento " & Letras(Valor - 100)
Case 200, 300, 400, 600, 800: Letras = Letras(Int(Valor \ 100)) &
"cientos"
Case 500: Letras = "quinientos"
Case 700: Letras = "setecientos"
Case 900: Letras = "novecientos"
Case Is < 1000: Letras = Letras(Int(Valor \ 100) * 100) & " " &
Letras(Valor Mod 100)
Case 1000: Letras = "mil"
Case Is < 2000: Letras = "mil " & Letras(Valor Mod 1000)
Case Is < 1000000: Letras = Letras(Int(Valor \ 1000)) & " mil"
If Valor Mod 1000 Then Letras = Letras & " " & Letras(Valor Mod
1000)
Case 1000000: Letras = "un millón "
Case Is < 2000000: Letras = "un millón " & Letras(Valor Mod
1000000)
Case Is < 1000000000000#: Letras = Letras(Int(Valor / 1000000)) & "
millones "
If (Valor - Int(Valor / 1000000) * 1000000) _
Then Letras = Letras & Letras(Valor - Int(Valor / 1000000) *
1000000)
Case 1000000000000#: Letras = "un billón "
Case Is < 2000000000000#
Letras = "un billón " & Letras(Valor - Int(Valor /
1000000000000#) * 1000000000000#)
Case Else: Letras = Letras(Int(Valor / 1000000000000#)) & "
billones "
If (Valor - Int(Valor / 1000000000000#) * 1000000000000#) _
Then Letras = Letras & " " & Letras(Valor - Int(Valor /
1000000000000#) * 1000000000000#)
End Select
End Function
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida