Vamos a ver hoy cómo convertir a mayúsculas o minúsculas el texto introducido en el campo de un formulario usando únicamente VBA.
Si eres una persona ordenada, a la que le gusta tener los datos bien organizados y estructurados, seguramente te gustará que todos los registros de un determinado campo estén todos en mayúsculas o en minúsculas. Pero no mezclados.
Sin duda, esta mezcla, además de dar muy mala imagen a la hora de elaborar un listado de datos, va a hacer que cueste leerlo mucho más que uno que tenga uniformidad en todos sus registros.
En el archivo que adjunto a modo de ejemplo, tenemos un formulario para introducir datos personales. Tenemos dos campos: "Nombre" y "Categoria".
Si queremos que, aunque no tengamos seleccionado Bloq Mayús, todo lo que escribamos en el campo "Nombre" se convierta a mayúsculas, copiaremos en el evento "Al presionar una tecla" el siguiente código,
Private Sub Nombre_KeyPress(KeyAscii As Integer)
'Caracteres en mayúscula
KeyAscii = Asc(UCase(Chr$(KeyAscii)))
End Sub
Si queremos que, aunque tengamos seleccionado Bloq Mayús, todo lo que escribamos en el campo "Categoria" se convierta a minúsculas, copiaremos en el evento "Al presionar una tecla" el siguiente código,
Private Sub Categoria_KeyPress(KeyAscii As Integer)
'Caracteres en minúscula
KeyAscii = Asc(LCase(Chr$(KeyAscii)))
End Sub
El resultado sería algo parecido a la siguiente figura, donde el contenido del campo "Nombre" aparece en mayúsculas, mientras que el contenido del campo "Categoria" aparece en minúsculas.
Espero que con este ejemplo hayas aprendido a convertir a mayúsculas o minúsculas el texto introducido en un campo de un formulario usando VBA.
Por último, quiero invitarte a compartir tus dudas en los comentarios o en el foro. Intentaré ayudarte en todo lo que pueda, y así aprenderemos todos.
Un saludo y hasta la próxima.
Si te ha servido y quieres donar
Descarga el archivo del ejemplo
4 Comentarios
Enviar un comentario
Últimas publicaciones
Hola, quería comentarte que con el código para poner mayúsculas, si quiero poner el simbolo del euro da un mensaje de error, se puede hacer algo para que no pase esto, gracias y un saludo
Hola Josep,
Prueba a poner lo siguiente,
On Error GoTo final
KeyAscii = Asc(UCase(Chr$(KeyAscii)))
final:
Saludos.
Ok gracias, eres un crack. Ahora sí que funciona bien.
Me alegro 😉