Visual Basic - TextBox

Life is soft - evento anual de software empresarial
 
Vista:

TextBox

Publicado por Roberto (26 intervenciones) el 25/10/2005 20:55:56
Hola quiero ver si me pueden ayudar con mi problema lo que pasa es que quiero eliminar los espacios dobles entre palabras de un TextBox agradeceria 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:TextBox

Publicado por ivan (1039 intervenciones) el 26/10/2005 00:41:29
Fue lo primero que se me ocurrió...:

Private Sub Command1_Click()
Dim parte1 As String
Dim parte2 As String
Dim i As Integer
parte1 = "": parte2 = "": i = 1
Do
If Mid(Text1.Text, i, 2) = " " Then
parte1 = Mid(Text1.Text, 1, i - 1)
parte2 = Mid(Text1.Text, i + 1, Len(Text1.Text))
Text1.Text = parte1 & parte2
i = 1
Else
i = i + 1
End If
Loop Until i = Len(Text1.Text)
End Sub

Seguramente habrá una mejor opcion, pero si no... esta si sirve, se trata de buscar en la cadena Text1.Text los dos espacios y si lo hay, le quita un espacio y vuelve a buscar desde el principio.

Suerte
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

RE:TextBox

Publicado por Arnaldo (53 intervenciones) el 27/10/2005 01:56:48
Hola, se me ocurrio esto tal vez te sirva. Podes probarlo en un formulario nuevo, agregando dos TextBox y un CommandButton. Esscrivis sobre el text1 y en el text2 te entrega el resultado.

Private Sub Command1_Click()
Dim aux As String

'Elimino blancos al comienzo y al final tel texto
aux = Trim(Text1.Text)
Text2.Text = ""
'Pregunto si la cadena de caracteres tiene blancos
If InStr(aux, " ") <> 0 Then
Do
'En aux buesco el primer blanco a la derecha
'y me quedo con los caracteres de izquierda a derecha hasta la
'posicion del primer blanco (una posicion menos, Instr me devuelve
'la posicion exacta del primer Blanco, en este caso).
Text2.Text = Text2.Text & Left(aux, InStr(aux, " ") - 1)
'Modifico el valor de aux
aux = Trim(Mid(aux, InStr(aux, " ")))
DoEvents
Loop Until InStr(aux, " ") = 0 'Controlo si aun hay blancos
End If
'si tenia blancos sumo la ultima cadena de caracteres sin blanco
Text2.Text = Text2.Text & aux

End Sub

Bueno espero que te sirva.

Trim - te elimina caracteres blanco al comienzo y al final de una cadena de
caracteres
Ltrim - Te elimina blancos a la izquierda
Rtrim -Te elimina blancos a la derecha

InStr - te permite buscar un caracter determinado en tu texto y te devuelve la
posicion.

como manejo de caracteres vas a encontrar varias explicasiones y ejemplos de las funciones de VB. Espero que te sirva.

Arnaldo.
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

RE:TextBox

Publicado por ivan (1039 intervenciones) el 27/10/2005 19:55:10
No me acordaba de la función InStr.

Es más práctico hacer búsquedas con esa función, que para eso es.....
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