Activar Mayúsculas a través de una macro

Hola, hace varios días atrás respondiste mi pregunta de esta manera:

Estimado yo se como hacerlo a través de código en el evento al presionar una tecla el código permite que cambie de mayúzcula a minúscula y esta se guarda en mayúzcula.
El código sería así.
Private Sub txtCod_KeyPress(KeyAscii As Integer)
KeyAscii = Asc(UCase(Chr(KeyAscii)))
End Sub

Este evento debes esta inserto en la propiedad al presionar una tecla en el campo de texto que desees.
Ejemplo: si en el campo nombre, ingresas la primera letra m en minúscula aparecerá una M mayúzcula, no solo como formato sino también se guardará como M Mayúzcula.
Este código lo que hace es activar la tecla mayúscula para el campo en cuestión.
al contrario para volver a minúscula hay que solo cambiar UCase por LCase.
Espero te pueda servir. Saludos.............

me sirvió y te lo agradezco, no logre precisamente lo que quería pero en definitiva el registro se grababa en mayúscula que era lo que me interesaba,,,,,,, mi problema vino después, resulta que por esta orden o como le quieras llamar, al activarse causa un conflicto con el teclado y deshabilita el teclado numerico, como así también la regionalidad lo que hace que cuando apretes (.) punto para que te salga la (,) coma no lo hace, lo que me causa un gran problema ya que el programa se trata de facturación, ahora bien la pregunta en si es como lo anulo (vos me dirás borra el código que escribiste) la verdad que ya lo revise varias veces y no consigo el código se que lo puse como un proceso incrustado al presionar una tecla pero no lo encuentro ahora, abría alguna forma de anularlo????? Disculpa lo extenso y gracias

1 Respuesta

Respuesta
1

Pues simple, vas a visor de códigos VBA y en edición Buscar, te aparecerá una ventana donde puedes buscar un texto en todo el código del sistema.

Y buscas específicamente esta línea: KeyAscii = Asc(UCase(Chr(KeyAscii)))

Debes establecer la opción de buscar en todo el proyecto.

De esta forma sabrás donde esta el bendito código.

Ya que estas y te agradezco la molestia, puede ser que la sentencia (ENVIARTECLA) dentro de una macro en Access 2010 este causando el problema porque el código lo busco por todos lados y no lo encuentro y recordando creo que después de probarlo lo borre pero algo pasa algo desactiva el teclado numérico y cambia la regionalidad, en internet leí que este código causa este problema es recurrente en los que queremos activar mayúsculas pero no dicen como solucionarlo, en lo que me puedas ayudar te agradezco.

Si desea que revise yo el problema con gusto lo haré sin embargo tendrá que enviarme la base de datos a [email protected] y por ese medio nos comunicaremos.

La otra opción si no puede enviarme la base de datos es que usted instale la aplicación Teamviewer encontrada en el sitio web www.teamviewer.com descarga e inicia la aplicación, no es necesario instalarla solo iniciar y me envía el ID y la clave de acceso para yo revisar su problema en su propio computador. La sesión terminará cuando usted lo indique cerrando el teamviewer.

Te estoy por mandar la BD por mail, en lo que me puedas ayudar... Gracias

Estimado he revisado tu base de datos, he creado una factura en el formulario de facturación y pude ingresar con minúzcula los datos, a demás pude presionar los número y cuando presiono el . (punto) en el teclado numérico pues aparece una, (coma). En vez del punto, Por otra parte he revisado todas y cada una de las macros, ninguna contiene elementos que vayan a hacer que esto suceda.

Podría especificar en que momento pasa esto si es en algún formulario en particular o es en todo el sistema desde que se inicia.

Hola, gracias por la molestia, el error se genera al momento de asentar la factura, si te fijas:

abres la factura con Ctrl+F buscas el producto introduces la cantidad etc. tienes que percionar Ctrl+T para bajar del detalle de factura, punes los descuentos si es que quieres al igual que con que te pago para saber el cambio y para asentar la factura presionas Ctrl+U en ese momento se me desactiban el NunLock y el CapsLock y la regionalidad hay antes de que aparezca el cuadro de confirmación si quieres o no asentar la factura.

como comentario te agrego que cambie de teclado pensando que podía estar funcionando mal el mismo pero no es así ocurre lo mismo, y lo mas curioso esto me ocurre en mi maquina con access 2010 pero corro el programa en la maquina de mi trabajo que tiene access 2007 y no ocurre el error por eso te preguntaba lo de (ENVIARTECLAS) EN ACCESS 2010 PENSANDO QUE QUIZÁ ESA SENTENCIA DENTRO DE UNA MACRO este produciendo el problema. como te dije antes gracias

Estimado ten en cuenta que los métodos abreviados de access son presionando la tacla CONTROL + una letra. Por ejemplo Control + U es para "abrir una nueva base de datos"

Puede que cambie eso entre versiones. Por lo que entiendo entonces es en el proceso de presionar Control + U donde ocurre el problema. Habría que revisar ese proceso en particular.

Lo veré ya que tengo la base de datos en mi poder. Y te aviso.

Otra cosa que note cuando un escribe en el detalle de la factura y presiono enter abre otro formulario donde filtra los productos que contienen los productos con los textos escritos anteriormente sin embargo cuando selecciono el ultimo producto y presiono enter se va el foco al producto siguiente que no tiene nada y establece el producto vacío en el detalle de la factura.

Cuando el detalle de la factura es nulo y aun se esta editando es cuando ocurre el bloqueo del teclado numérico. Eso me ha pasado pero si vuelvo a editar el detalle que se esta editando es entonces cuando se bloquea el teclado numero y puedo seguir escribiendo números.

Hay que revisar ese proceso.

Lo seguiré revisando.

Colega, probé sacando EnviarTeclas en el procedimiento Control + U y todo funcionó a la perfección es ese el procedimiento que le cambia las configuraciones.

El evento esta en el Campo Observaciones. Al final del formulario. Si lo selecciona y ve los eventos podrá entrar a la macro que contiene enviarTeclas en el procedieminto Control + U

Saque todo los eventos enviarTeclas y vera que todo su problema se resuelve.

Saludos. Y para que vea que $7.000 pesos pueden solucionar un problema que lleva semanas sin resolverse.

Te agradezco mucho y la verdad si tuviese el dinero con gusto pero si te diste cuenta el programa no es profesional, con esto te quiero demostrar que lo ise yo como pude para evitar gastos que no puedo afrontar, como te dije muchas gracias.... saludos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas