Asignar atajos de teclado para ejecutar el procedimiento

Cuando presiono F5 en el editor de VBA, siempre me gustaría ejecutar mi procedimiento “Sub Skynet ()”. ¿Hay alguna manera de asignar un atajo de teclado a este procedimiento?

Para asignar una tecla del teclado al botón en la hoja puede usar este código, simplemente copie este código en la hoja que contiene el botón.

Aquí Return especifica la clave y get_detail es el nombre del procedimiento.

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.OnKey "{RETURN}", "get_detail" End Sub 

Ahora dentro de esta hoja cada vez que presione el botón Enter se llamará a la macro asignada.

De acuerdo con la documentación de Microsoft

  1. En el menú Herramientas, señale Macro y luego haga clic en Macros.
  2. En el cuadro Nombre de macro, ingrese el nombre de la macro que desea asignar a una tecla de método abreviado del teclado.
  3. Haga clic en Opciones.
  4. Si desea ejecutar la macro presionando una tecla de método abreviado, ingrese una letra en el cuadro de la tecla de acceso directo. Puede utilizar CTRL + letra (para letras minúsculas) o CTRL + MAYÚS + letra (para letras mayúsculas), donde letra es cualquier tecla de letra en el teclado. La tecla de método abreviado no puede usar un número o carácter especial, como @ o # .

    Nota: La tecla de acceso directo anulará cualquier tecla de método abreviado de Microsoft Excel predeterminada mientras el libro de trabajo que contiene la macro esté abierto.

  5. Si desea incluir una descripción de la macro, escríbala en el cuadro Descripción.

  6. Haga clic en Aceptar.
  7. Haga clic en Cancelar.

A continuación se explica cómo asignar un atajo de teclado a una macro personalizada en Word 2013. El escenario es que creó una macro llamada “fred” y desea ejecutar la macro al presionar Ctrl + f.

  1. Haga clic en Archivo, Opciones.
  2. Haga clic en Personalizar cinta (desde mi perspectiva este es el paso no intuitivo).
  3. Haga clic en el botón “Atajos de teclado: Personalizar”.
  4. En el cuadro de lista Categorías, desplácese hacia abajo hasta el botón y seleccione Macros.
  5. El cuadro de lista Macros ahora debería mostrar la lista de macros personalizadas. Seleccione “fred”.
  6. Haga clic en el cuadro de texto “Presione la nueva tecla de acceso directo” para que esté activo.
  7. Escriba Ctrl + f. Esto debería aparecer en el cuadro de texto.
  8. Mire el cuadro de lista “Claves actuales”. En este caso, muestra “Actualmente asignado a NavPaneSearch”.
  9. Si no le importa anular ese valor predeterminado, haga clic en el botón “Asignar” en la esquina inferior izquierda para asignar “Ctrl + f: para ejecutar su macro” fred “.

Por defecto, la asignación se guarda en la plantilla del documento Normal.dotm. Si la asignación de este teclado es exclusiva de este documento, es posible que desee cambiar el menú desplegable “Guardar cambios en” a su nombre de documento.

F5 es un atajo estándar para ejecutar una macro en el editor de VBA. No creo que pueda agregar una tecla de método abreviado en el editor. Si desea ejecutar la macro desde Excel, puede asignar un acceso directo desde allí.

En Excel, presione alt + F8 para abrir el cuadro de diálogo de macro. seleccione la macro a la que desea asignar la tecla de método abreviado y haga clic en las opciones. allí puedes asignar un atajo a la macro.

Las teclas de función F ( F1 , F2 , F3 , F4 , F5 , etc.) se pueden asignar a las macros con los siguientes códigos:

 Sub A_1() Call sndPlaySound32(ThisWorkbook.Path & "\a1.wav", 0) End Sub Sub B_1() Call sndPlaySound32(ThisWorkbook.Path & "\b1.wav", 0) End Sub Sub C_1() Call sndPlaySound32(ThisWorkbook.Path & "\c1.wav", 0) End Sub Sub D_1() Call sndPlaySound32(ThisWorkbook.Path & "\d1.wav", 0) End Sub Sub E_1() Call sndPlaySound32(ThisWorkbook.Path & "\e1.wav", 0) End Sub Sub auto_open() Application.OnKey "{F1}", "A_1" Application.OnKey "{F2}", "B_1" Application.OnKey "{F3}", "C_1" Application.OnKey "{F4}", "D_1" Application.OnKey "{F5}", "E_1" End Sub 

Me encontré con este problema yo mismo. La única solución que tengo es registrar primero la macro en un libro de Excel. Luego, arrastre y suelte EL MÓDULO desde el libro de trabajo abierto en los módulos adicionales. Esta será una copia del módulo anterior, pero el atajo de teclado que le asignó, afortunadamente, persistirá.

Solo grabo una macro de basura y la muevo allí, luego copio el código de mis contraseñas del módulo real.

Me sentí muy bien al resolver esto, ¡sentí que tenía que responder a las publicaciones de 5 años que encontré sobre el tema!

El problema que tuve con lo anterior es que quería asociar una tecla de acceso directo con una macro en un xlam que no tiene una interfaz visible. Descubrí que lo siguiente funcionó

Para asociar una tecla de acceso directo con una macro

En Excel (no VBA) en la pestaña Desarrollador, haga clic en Macros: no se mostrarán macros Escriba el nombre del Sub El botón Opciones se debe habilitar Haga clic en Ctrl será la opción predeterminada Mantenga presionada la tecla Shift y presione la letra que desee, por ejemplo Mayús y A asociará Ctrl-Shift-A con el Sub

Puede agregar algunos accesos directos ALT + Carta al entorno del editor VBA. Agregué ALT + C para comentar las líneas de texto seleccionadas y A + X para eliminar el comentario de las líneas de texto seleccionadas:

  1. En el VBE, haga clic derecho en una barra de herramientas y seleccione Personalizar
  2. Opcionalmente crear una nueva barra de herramientas
  3. Seleccione la pestaña Comando y ‘Editar’ en el cuadro de lista Categorías. Encuentra ‘Bloque de comentarios’ en el cuadro de lista Comandos. Haga clic y arrástrelo a la barra de herramientas de destino. Haga clic izquierdo sobre él para abrir el menú emergente de contexto y seleccione ‘Imagen y texto’. Reemplace el nombre con & C.
  4. Repita el paso 3 para el comando Descomentar Bloque y reemplace el nombre con & X.
  5. Cierre la ventana emergente Personalizar.

Hay comandos Alt + Letter incorporados que no se pueden usar para nuevos accesos directos usando letras: A, D, E, D, H, I, O, Q, R, T, V, W.