NUMLETRAS

02/12/2004 - 22:01 por DAGOBERTO | Informe spam
ALGUIEN QUE TENGA UN COMPLEMERO QUE CONVIERTA UNA CANTIDAD EN NUMERO A UNA
CANTIDAD EN LETRAS

Preguntas similare

Leer las respuestas

#1 Marcos Galaviz
02/12/2004 - 22:29 | Informe spam
Me pasaron esta y funciona bien:

Function EnLetras(Valor) As String ' Función Principal '
If Not IsNumeric(Valor) Then
EnLetras = " ¡ La referencia no es un numero ! ":
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(Valor)), 6) = "ILLON " Or Right(Letras(Abs(Valor)), 8)
= "ILLONES " Then Moneda = "DE" & Moneda
Cents = Application.Round(Abs(Valor) - Int(Abs(Valor)), 2) * 100
If Cents = 0 Then EnLetras = "( " & Letras(Int(Abs(Valor))) & Moneda &
Fracs & "00/100 M.N. )" Else
If Cents >= 1 Then EnLetras = "( " & Letras(Int(Abs(Valor))) & Moneda &
Fracs & "0" & Cents & "/100 M.N. )" Else
If Cents >= 10 Then EnLetras = "( " & Letras(Int(Abs(Valor))) & Moneda &
Fracs & Cents & "/100 M.N. )"
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 = "UN MIL"
Case Is < 2000: Letras = "UN 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 MILLON "
Case Is < 2000000: Letras = "UN MILLON " & 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 BILLON "
Case Is < 2000000000000#
Letras = "UN BILLON " & 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

"DAGOBERTO" escribió en el mensaje
news:
ALGUIEN QUE TENGA UN COMPLEMERO QUE CONVIERTA UNA CANTIDAD EN NUMERO A UNA
CANTIDAD EN LETRAS
Respuesta Responder a este mensaje
#2 Luis
03/12/2004 - 00:38 | Informe spam
Menufazt tiene esta opcion:

http://www11.brinkster.com/luism0/

Luis Medina
MENUFazt - Menu Excel Multifunciones



"DAGOBERTO" escribió en el mensaje
news:
ALGUIEN QUE TENGA UN COMPLEMERO QUE CONVIERTA UNA CANTIDAD EN NUMERO A UNA
CANTIDAD EN LETRAS





Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.796 / Virus Database: 540 - Release Date: 13/11/2004
Respuesta Responder a este mensaje
#3 Luis Caro
03/12/2004 - 16:51 | Informe spam
Hola Luis.Me bajé tu colaboración para la conversión,pero no la entiendo.Se
puede clarificar un poco?

Cordialmente
Luis Caro

No somos 3.Quitar NOSPAMEPM.Poner epm.y el resto
http://usuarios.tripod.es/maderascolombianas2
http://www.geocities.com/maderascolombianas2002
Respuesta Responder a este mensaje
#4 Sebastian Marquez
03/12/2004 - 18:30 | Informe spam
esta es la misma pero la modifique para sacarle el M.N. y para que en los
centavos te ponga por ejemplo "con 1/100"


Function EnLetras(Valor) As String ' Función Principal '
If Not IsNumeric(Valor) Then
EnLetras = " La referencia no es un numero ! ":
Exit Function
End If: Dim Moneda As String, Fracs As String, Cents As Integer

If Int(Abs(Valor)) = 1 Then Moneda = " PESO, con " Else Moneda = " PESOS,
con "
If Right(Letras(Abs(Valor)), 6) = "ILLON " Or Right(Letras(Abs(Valor)), 8)
= "ILLONES " Then Moneda = "DEPESOS"
Cents = Application.Round(Abs(Valor) - Int(Abs(Valor)), 2) * 100

If Cents = 0 Then EnLetras = "( " & Letras(Int(Abs(Valor))) & Moneda &
Fracs & "00/100 )" Else
EnLetras = "( " & Letras(Int(Abs(Valor))) & Moneda & Fracs & Cents &
/100 )"

End Function

Private Function Letras(Valor) As String
' Función Auxiliar [uso 'exclusivo'de la funcion '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 = "UN MIL"
Case Is < 2000: Letras = "UN 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 MILLON "
Case Is < 2000000: Letras = "UN MILLON " & 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 BILLON "
Case Is < 2000000000000#
Letras = "UN BILLON " & 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


"DAGOBERTO" escribió en el mensaje
news:
ALGUIEN QUE TENGA UN COMPLEMERO QUE CONVIERTA UNA CANTIDAD EN NUMERO A UNA
CANTIDAD EN LETRAS
Respuesta Responder a este mensaje
#5 L. A. M.
03/12/2004 - 18:43 | Informe spam
Un saludo Luis Caro,

Te informo que gran parte de la ayuda y las explicaciones estan en el sitio
web para cada una de las funciones de Menufazt. En especial, la utilidad de
convertir letras a numeros no requiere mayor explicacion: es un formulario
donde seleccionas la celda donde esta el numero y otra celda donde se coloca
el texto. Tambien puedes configurar el tipo de moneda y la forma de los
decimales que desees.

Desde este sitio web tambien puedes descargar una hoja que convierte numeros
a letras, sin macros y que puedes insertar en cualquier libro para
utilzarla.

Un saludo,


Luis Medina
Menufazt - Utilidades en Excel
http://www11.brinkster.com/LUISM0/


"Luis Caro" escribió en el mensaje
news:
Hola Luis.Me bajé tu colaboración para la conversión,pero no la
entiendo.Se puede clarificar un poco?

Cordialmente
Luis Caro

No somos 3.Quitar NOSPAMEPM.Poner epm.y el resto
http://usuarios.tripod.es/maderascolombianas2
http://www.geocities.com/maderascolombianas2002







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.802 / Virus Database: 545 - Release Date: 11/26/2004
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida