Principales respuestas
Caracter en una cadena de caracteres

Pregunta
-
Respuestas
-
Este es un ejemplo de una caja de texto en la cual se ingresa el gasto administrativo.
El evento es el KeyPress.
Si el usuario presiona (.) se cambia por (,). Y si presiona Enter, se dá el foco al botón CmbA.
Private Sub TxtGAdm_KeyPress(KeyAscii As Integer)
If KeyAscii = 46 Then
KeyAscii = 44
ElseIf KeyAscii = 13 Then
CmbA.SetFocus
End If
End Sub
Busca en la ayuda la tabla de valores Ascii para ver el codigo que le corresponde a cada caracter.
algunas teclas no se interceptan el el evento KeyPress. En estos casos hay que usar otros eventos del teclado, ej: KeyDown
Si la verificación la querés hacer después de que se ha ingresado le texto, por ejemplo al hacer click en Guardar, podés usar este codigo:
TxtGAdm = Replace(TxtGAdm, ".", ",")
- Marcado como respuesta Pascalito666 lunes, 29 de junio de 2009 20:25
Todas las respuestas
-
Este es un ejemplo de una caja de texto en la cual se ingresa el gasto administrativo.
El evento es el KeyPress.
Si el usuario presiona (.) se cambia por (,). Y si presiona Enter, se dá el foco al botón CmbA.
Private Sub TxtGAdm_KeyPress(KeyAscii As Integer)
If KeyAscii = 46 Then
KeyAscii = 44
ElseIf KeyAscii = 13 Then
CmbA.SetFocus
End If
End Sub
Busca en la ayuda la tabla de valores Ascii para ver el codigo que le corresponde a cada caracter.
algunas teclas no se interceptan el el evento KeyPress. En estos casos hay que usar otros eventos del teclado, ej: KeyDown
Si la verificación la querés hacer después de que se ha ingresado le texto, por ejemplo al hacer click en Guardar, podés usar este codigo:
TxtGAdm = Replace(TxtGAdm, ".", ",")
- Marcado como respuesta Pascalito666 lunes, 29 de junio de 2009 20:25
-
-
La solucion que tienen funciona si se digita en el campo de texto pero si se el texto se pega no. La instruccion para buscar un caracter en una cadena de texto es instr(1, cadenaenlaquebusca, cadenaquebusca, vbTextCompare), o sea, InStr(1, Text1.Text, ".", vbTextCompare) , devolviendo la posicion en la que se encuentra el primer caracter de la cadena de busqueda en este caso el punto, si en la cadena en la que se busca pueden haber varios puntos se usa un ciclo de repeticion de la busqueda en este caso un while y wend ,el codigo quedaria asi :
coma = 1
While coma > 0
coma = InStr(1, Text1.Text, ".", vbTextCompare)
If coma > 0 Then
Text1.Text = Left(Text1, coma - 1) & "," & Right(Text1, Len(Text1.Text) - coma)
End If
Wend
Este codigo se puede poner en el evento change o lostfocus del textbox.
Carlos Alberto Quijano Acevedo
Profesional I.T.
www.planigrafo.com
Carlos Alberto Quijano Acevedo