numero a letras como moneda

Download Numero a Letras Como Moneda

If you can't read please download the document

Upload: lorenzo-pilco-apaza

Post on 01-Oct-2015

212 views

Category:

Documents


0 download

DESCRIPTION

Macro para Excel

TRANSCRIPT

'========================================================================' Funcin: Convertir nmeros a letras'' Creado por Otto Javier Gonzlez' www.youtube.com/ottojaviergonzalez' Finalizado el 4 de Julio de 2013'' Visual Basic Para Microsoft Excel 2013' Lista de reproduccin del curso en YouTube:' http://www.youtube.com/playlist?list=PLFNWPvtjBMjtnYLCp8KJwD1Ref7WLCIVZ''========================================================================Option ExplicitFunction cMoneda(num As Double) As String Dim nEntero As Long Dim nDecimal As Double Dim Texto As String nEntero = Int(num) nDecimal = Int(Round((num - nEntero) * 100)) 'Correccin de ltimoo momento Texto = cNumero(nEntero) ' Agrega la moneda If nEntero = 1 Then Texto = Texto + " Dlar" Else If (nEntero Mod 1000000) = 0 Then Texto = Texto + " De" End If Texto = Texto + " Soles" End If 'Agrega los centavos If nDecimal 0 Then Texto = Texto + " Con " + cNumero(nDecimal) If nDecimal = 1 Then Texto = Texto + " Centavo" Else Texto = Texto + " Centavos" End If End If cMoneda = Texto End FunctionFunction cNumero(ByVal num As Long) As String Dim Texto As String Dim cUnidades, cDecenas, cCentenas Dim nUnidades, nDecenas, nCentenas As Byte Dim nMiles As Long Dim nMillones As Long cUnidades = Array("", "Un", "Dos", "Tres", "Cuatro", "Cinco", "Seis", "Siete", "Ocho", "Nueve", "Diez", "Once", "Doce", "Trece", "Catorce", "Quince", "Dieciseis", "Diecisite", "Dieciocho", "Diecinueve", "Veinte", "Veintiuno", "Veintids", "Veintitrs", "Veitnicuatro", "Veinticinco", "Veintiseis", "Veintisiete", "Veintiocho", "Veintinueve") cDecenas = Array("", "Diez", "Veinte", "Treinta", "Cuarenta", "Cincuenta", "Sesenta", "Setenta", "Ochenta", "Noventa", "Cien") cCentenas = Array("", "Ciento", "Doscientos", "Trescientos", "Cuatrocientos", "Quinientos", "Seiscientos", "Setecientos", "Ochocientos", "Novecientos") nMillones = num \ 1000000 nMiles = (num \ 1000) Mod 1000 nCentenas = (num \ 100) Mod 10 nDecenas = (num \ 10) Mod 10 nUnidades = num Mod 10 'Evaluacin de Millones If nMillones = 1 Then Texto = "Un Milln" + IIf(num Mod 1000000 0, " " + cNumero(num Mod 1000000), "") cNumero = Texto Exit Function ElseIf nMillones >= 2 And nMillones