Vous êtes sur la page 1sur 3

'funcion para convertir los numeros a caracteres.

'fal�n Dalence jos� A. (falon.civ@gmail.com)


'sucre - bolivia
' 70332435

function num_texto(numero)
dim texto
dim millones
dim miles
dim cientos
dim decimales
dim cadena
dim cadmillones
dim cadmiles
dim cadcientos
texto = numero
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 = conviertecifra(millones, 1)
cadmiles = conviertecifra(miles, 1)
cadcientos = conviertecifra(cientos, 0)
if trim(cadmillones) > "" then
if trim(cadmillones) = "un" then
cadena = cadmillones & " millon"
else
cadena = cadmillones & " millones"
end if
end if
if trim(cadmiles) > "" then
cadena = cadena & " " & cadmiles & " mil"
end if
if trim(cadmiles & cadcientos) = "un" then
cadena = cadena & "uno con " & decimales & "/100"
else
if miles & cientos = "000000" then
cadena = cadena & " " & trim(cadcientos) & " " & decimales & "/100"
else
cadena = cadena & " " & trim(cadcientos) & " " & decimales & "/100"
end if
end if
num_texto = trim(cadena)
end function

function conviertecifra(texto, sw)


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 sw 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
conviertecifra = txtcentena & " " & txtdecena & txtunidad
end function

Vous aimerez peut-être aussi