Tip: uso de teclas rápidas (hotkey, accelerator) en TextBox
En el uso de las computadoras “con teclado” es común el uso de teclas de acceso rápido, conocidas como hotkeys, las cuales nos permiten realizar una acción o accesar a un control en un formulario o menú mediante la combinación de 2 ó 3 teclas de manera progresiva.
Wikipedia nos dice:
Los atajos de teclado más simples son aquellos compuestos por una única tecla. En estos casos, simplemente se suele escribir el nombre de la tecla, como "Pulsa F1 para obtener la Ayuda". El nombre de la tecla puede ser envuelta entre corchetes, o caracteres similares. Por ejemplo: [F1] or <F1>. Además, puede adornarse también con formato especial (negrita, cursiva, etc.).
En muchos casos, necesitamos pulsar varias teclas conjuntamente para conseguir un atajo de tecleado. En estos casos, la notación más utilizada es la siguiente: escribir conscutivamente cada una de ellas, unidas por el símbolo más o menos. Por ejemplo: Ctrl+C o Ctrl-C.
Por último, existen algunos atajos de teclado que se activan mediante la pulsación individual de varias teclas, a modo de secuencia. Por ejemplo: Alt+A, S o Alt+A; S, lo que podría traducirse como "Primero pulsa Alt y A conjuntamente, y luego S". Estos atajos de teclado, por norma general, representan una serie de combinaciones de teclas menores, que individualmente no definen una acción específica, pero que conjuntamente, por el contrario, sí. Un ejemplo de ello lo encontramos con la combinación explicada anteriormente, que en la mayoría de las aplicaciones de escritorio provocaría abrir el menú "Archivo", y posteriormente, cerrar o salir de la aplicación.
El tema que nos ocupa es saber cómo asignar un acceso a rápido a un TextBox dentro de un formulario creado en el IDE de vba.
Al momento de diseñar nuestro formulario, los controles tienen una propiedad llamada Accelerator. Dicha propiedad nos indica que si presionamos Alt + la tecla aceleradora, el foco se le dará a dicho control.
Para darle un foco a un TextBox deberá ser mediante una etiqueta (Label), ya que el control no tiene la propiedad Accelerator. Se crea el TextBox y un Label, puesto en el lado deseado según gustos del programador. Entonces le asignamos la tecla aceleradora a nuestro Label, y asignamos en el orden de tabulación (TabIndex) primero el Label y después el TextBox. Para asignar el orden de tabulacion lo podemos hacer dando click derecho en una parte del formulario en diseño y elegimos Orden de tabulación, como muestra la imagen:
Orden de tabulación
Imagen del formulario en acción
:: Descargar el ejemplo EXCELeINFO – Uso de teclas rápidas para TextBox