Visual Basic - Seleccionar caracteres

Life is soft - evento anual de software empresarial
 
Vista:

Seleccionar caracteres

Publicado por Miguel (243 intervenciones) el 06/03/2001 09:36:25
¿Cómo puedo hacer referencia a los dos primeros caracteres de un TextBox y según el número que sea hacer una cosa o otra?
Gracias
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:Seleccionar caracteres

Publicado por Ariopolis (159 intervenciones) el 06/03/2001 10:45:42
Codifica el evento Keypress del TextBox y comprueba si el Len(Text1.Text) = 2, para hacer la operación que necesites.
Un saludo y espero que te valga, aunque no vendría mal que aclarases un poco más lo que quieres hacer y así poder ayudarte más.
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:Seleccionar caracteres

Publicado por Miguel (243 intervenciones) el 06/03/2001 12:13:41
A ver.Tengo un textbox para introducir teléfonos y yo le coloco los puntos para separar el prefijo y las cifras. Lo que quiero es que según el prefijo (si es de tres o de dos) poner los puntos según toque.
A ver si me puedes ayudar
Gracias
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:Seleccionar caracteres

Publicado por Ariopolis (159 intervenciones) el 06/03/2001 13:02:56
Entonces supongo que debes saber que prefijos son de 2 cifras y cuales de 3, por lo tanto en el mismo Keypress debes comprobar si las 2 primeras cifras se corresponden con un prefijo de 2 cifras y añadirle el punto y si es de 3 se lo colocas despues, ejemplo (sólo para prefijos 91 y 96, deberías poner todos los prefijos de 2 cifras en el if):
Evento Keypress del TextBox
If KeyAscii <> vbKeyBack Then
If Len(Text1.Text) = 2 Then
If Text1.Text = "91" Or Text1.Text = "96" Then
Text1.Text = Text1.Text & "."
Text1.SelStart = Len(Text1.Text)
End If
ElseIf Len(Text1.Text) = 3 And Right(Text1.Text, 1) <> "." Then
Text1.Text = Text1.Text & "."
Text1.SelStart = Len(Text1.Text)
End If
End If
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:Seleccionar caracteres

Publicado por Ariopolis (159 intervenciones) el 06/03/2001 13:10:37
AH!, pon también el código para que sólo te permita introducir números:

Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii >= vbKey0 And KeyAscii <= vbKey9) Or KeyAscii = vbKeyBack Then
If KeyAscii <> vbKeyBack Then
If Len(Text1.Text) = 2 Then
If Text1.Text = "91" Or Text1.Text = "96" Then
Text1.Text = Text1.Text & "."
Text1.SelStart = Len(Text1.Text)
End If
ElseIf Len(Text1.Text) = 3 And Right(Text1.Text, 1) <> "." Then
Text1.Text = Text1.Text & "."
Text1.SelStart = Len(Text1.Text)
End If
End If
Else
KeyAscii = 0
End If
End Sub

Un saludo
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:Seleccionar caracteres

Publicado por Pedro Luis (878 intervenciones) el 06/03/2001 14:50:28
No sé si no he entendido bien el problema pero me parece que os estais liando.
Los telefonos son de seis cifras y un prefijo, y si en el LostFocus poneis
telf=Format(telf,"### ## ## ##") quedará perfectamente legible, tanto si hay dos o tres dígitos en el prefijo
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:Seleccionar caracteres

Publicado por Ariopolis (159 intervenciones) el 06/03/2001 15:02:11
Efectivamente como dices quedaría legible pero ten en cuenta que los teléfonos son de 6 cifras si el prefijo es de 3 y de 7 cifras si el prefijo es de 2. No siempre es igual. Un saludo
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