Download - Funcion Para Pasar Numeros a Letras

Transcript

'Funcion para pasar numeros a letras

FunctionNumLetras(ValorAsCurrency,OptionalMonedaSingularAsString="",OptionalMonedaPluralAsString="")AsString

DimlyCantidadAsCurrency, lyCentavosAsCurrency, lnDigitoAsByte, lnPrimerDigitoAsByte, lnSegundoDigitoAsByte, lnTercerDigitoAsByte, lcBloqueAsString, lnNumeroBloquesAsByte, lnBloqueCero

DimlaUnidadesAsVariant, laDecenasAsVariant, laCentenasAsVariant, IAsVariant'Si esta como Option Explicit

DimValorEnteroAsLong

Valor = Round(Valor, 2)

lyCantidad = Int(Valor)

ValorEntero = lyCantidad

lyCentavos = (Valor - lyCantidad) * 100

laUnidades = Array("UN","DOS","TRES","CUATRO","CINCO","SEIS","SIETE","OCHO","NUEVE","DIEZ","ONCE","DOCE","TRECE","CATORCE","QUINCE","DIECISEIS","DIECISIETE","DIECIOCHO","DIECINUEVE","VEINTE","VEINTIUN","VEINTIDOS","VEINTITRES","VEINTICUATRO","VEINTICINCO","VEINTISEIS","VEINTISIETE","VEINTIOCHO","VEINTINUEVE")

laDecenas = Array("DIEZ","VEINTE","TREINTA","CUARENTA","CINCUENTA","SESENTA","SETENTA","OCHENTA","NOVENTA")

laCentenas = Array("CIENTO","DOSCIENTOS","TRESCIENTOS","CUATROCIENTOS","QUINIENTOS","SEISCIENTOS","SETECIENTOS","OCHOCIENTOS","NOVECIENTOS")

lnNumeroBloques = 1

Do

lnPrimerDigito = 0

lnSegundoDigito = 0

lnTercerDigito = 0

lcBloque =""

lnBloqueCero = 0

ForI = 1To3

lnDigito = lyCantidadMod10

IflnDigito 0Then

SelectCaseI

Case1

lcBloque =" "& laUnidades(lnDigito - 1)

lnPrimerDigito = lnDigito

Case2

IflnDigito