Un monto numérico convertir a texto

Buena tarde Experto, estoy trabajando en una base de datos que me permite llevar contabilidades pero una de las cosas que necesito que un textbox formulado que me genera un monto total de sumas, me permita desplegar su representación en letras, agradecería me indicaras los pasos o como tengo que reaizarlo. Muy amable

1 Respuesta

Respuesta
1

Gracias por la respuesta pero el requerimiento es para realizar en access

Insisto... lo único que tienes que emplear es esta función, que es perfectamente compatible en access (es vba)

Public i
Function num2let(importe)
If importe = 1 Then final = " peso" Else final = " euros"
If importe > 999 Then num2let = num2letras(Int(importe / 1000)) + " mil "
num2let = num2let + num2letras(importe - Int(importe / 1000) * 1000) + final
If Int(importe) = 0 Then num2let = "cero euros"
If importe <> Int(importe) Then
num2let = num2let + " con " + num2letras((importe - Int(importe)) * 100) + " centavos."
End If
End Function
Function num2letras(importe)
'Pasa de numero a letras, importes entre 0 y 999
'Centena ----------------------------------------
centena2 = Int(importe / 100)
Select Case centena2
Case 0: num2letras = ""
Case 1: num2letras = "cien"
Case 2: num2letras = "doscientos"
Case 3: num2letras = "trescientos"
Case 4: num2letras = "cuatrocientos"
Case 5: num2letras = "quinientos"
Case 6: num2letras = "seiscientos"
Case 7: num2letras = "setecientos"
Case 8: num2letras = "ochocientos"
Case 9: num2letras = "novecientos"
End Select
'Decena ----------------------------------------------
decena2 = Int((importe - centena2 * 100) / 10)
If centena2 = 1 Then num2letras = num2letras + "to"
Select Case decena2
Case 1: num2letras = num2letras + " diez"
Case 2: num2letras = num2letras + " veinte"
Case 3: num2letras = num2letras + " treinta"
Case 4: num2letras = num2letras + " cuarenta"
Case 5: num2letras = num2letras + " cincuenta"
Case 6: num2letras = num2letras + " sesenta"
Case 7: num2letras = num2letras + " setenta"
Case 8: num2letras = num2letras + " ochenta"
Case 9: num2letras = num2letras + " noventa"
End Select
'Unidad ----------------------------------------------
unidad2 = Int((importe - centena2 * 100 - decena2 * 10))
If decena2 = 0 Then
'num2letras = Mid(num2letras, 1, Len(num2letras) - 6)
Select Case unidad2
'Case 0: num2letras = num2letras + " cero"
Case 1: num2letras = num2letras + " un"
Case 2: num2letras = num2letras + " dos"
Case 3: num2letras = num2letras + " tres"
Case 4: num2letras = num2letras + " cuatro"
Case 5: num2letras = num2letras + " cinco"
Case 6: num2letras = num2letras + " seis"
Case 7: num2letras = num2letras + " siete"
Case 8: num2letras = num2letras + " ocho"
Case 9: num2letras = num2letras + " nueve"
End Select
End If
If decena2 = 1 Then
num2letras = Mid(num2letras, 1, Len(num2letras) - 4)
Select Case unidad2
Case 0: num2letras = num2letras + " diez"
Case 1: num2letras = num2letras + " once"
Case 2: num2letras = num2letras + " doce"
Case 3: num2letras = num2letras + " trece"
Case 4: num2letras = num2letras + " catorce"
Case 5: num2letras = num2letras + " quince"
Case 6: num2letras = num2letras + " diceciseis"
Case 7: num2letras = num2letras + " diecisiete"
Case 8: num2letras = num2letras + " dieciocho"
Case 9: num2letras = num2letras + " diecinueve"
End Select
End If
If decena2 = 2 Then
If unidad2 <> 0 Then num2letras = Mid(num2letras, 1, Len(num2letras) - 6)
Select Case unidad2
Case 1: num2letras = num2letras + " veintiún"
Case 2: num2letras = num2letras + " veintidós"
Case 3: num2letras = num2letras + " veintitrés"
Case 4: num2letras = num2letras + " veinticuatro"
Case 5: num2letras = num2letras + " veinticinco"
Case 6: num2letras = num2letras + " veintiséis"
Case 7: num2letras = num2letras + " veintisiete"
Case 8: num2letras = num2letras + " veintiocho"
Case 9: num2letras = num2letras + " veintinueve"
End Select
End If
If decena2 > 2 Then
Select Case unidad2
Case 1: num2letras = num2letras + " y un"
Case 2: num2letras = num2letras + " y dos"
Case 3: num2letras = num2letras + " y tres"
Case 4: num2letras = num2letras + " y cuatro"
Case 5: num2letras = num2letras + " y cinco"
Case 6: num2letras = num2letras + " y seis"
Case 7: num2letras = num2letras + " y siete"
Case 8: num2letras = num2letras + " y ocho"
Case 9: num2letras = num2letras + " y nueve"
End Select
End If
If importe = 100 Then num2letras = "cien"
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas