Visual Basic.NET - convertir de de intero a cadena

   
Vista:

convertir de de intero a cadena

Publicado por jorge (4 intervenciones) el 31/08/2010 17:57:37
hola a todos los programadores de esta web necesito ayuda sobre como convertir unos valore en entero en cadena o sea algo asi 7.50 q me salga en otra caja de texto son : siete con 50/100 nuevos soles les agradesco su ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:convertir de de intero a cadena

Publicado por Rolando Lau (7 intervenciones) el 01/09/2010 00:57:19
Aqui te dejo la funcion

Public Function NumeroATexto(ByVal nCifra As Object) As String
' Defino variables
Dim cifra, bloque, decimales, cadena As String
Dim longituid, posision, unidadmil As Byte

' En caso de que unidadmil sea:
' 0 = cientos
' 1 = miles
' 2 = millones
' 3 = miles de millones
' 4 = billones
' 5 = miles de billones

' Reemplazo el símbolo decimal por un punto (.) y luego guardo la parte entera y la decimal por separado
' Es necesario poner el cero a la izquierda del punto así si el valor es de sólo decimales, se lo fuerza
' a colocar el cero para que no genere error
cifra = Format(CType(nCifra, Decimal), "###############0.#0")
decimales = Mid(cifra, Len(cifra) - 1, 2)
cifra = Left(cifra, Len(cifra) - 3)

' Verifico que el valor no sea cero
If cifra = "0" Then
Return IIf(decimales = "00", "cero", "cero con " & decimales & "/100")
End If

' Evaluo su longitud (como mínimo una cadena debe tener 3 dígitos)
If Len(cifra) < 3 Then
cifra = Rellenar(cifra, 3)
End If

' Invierto la cadena
cifra = Invertir(cifra)

' Inicializo variables
posision = 1
unidadmil = 0
cadena = ""

' Selecciono bloques de a tres cifras empezando desde el final (de la cadena invertida)
Do While posision <= Len(cifra)
' Selecciono una porción del numero
bloque = Mid(cifra, posision, 3)

' Transformo el número a cadena
cadena = Convertir(bloque, unidadmil) & " " & cadena.Trim

' Incremento la cantidad desde donde seleccionar la subcadena
posision = posision + 3

' Incremento la posisión de la unidad de mil
unidadmil = unidadmil + 1
Loop

' Cargo la función
Return IIf(decimales = "00", cadena.Trim.ToLower, cadena.Trim.ToLower & " con " & decimales & "/100")
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar