Назначить клавишам свой собственный макрос- Basic(Бейсик)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Вариант. Разместите в любом стандартном модуле нужной рабочей книги:
 
Private Sub Auto_Open()
    Application.OnKey Key:="+^%{F1}", Procedure:="MessageBox"
    ' Сочетание клавиш SHIFT + CTRL + ALT + F1
End Sub
  
Private Sub MessageBox()
    MsgBox "Здесь могла быть Ваша реклама ..."
End Sub
или:
 
Private Sub Auto_Open()
    Application.OnKey Key:="^c", Procedure:="NewName"
    ' Сочетание клавиш CTRL + C (c)
End Sub
  
Private Sub NewName()
    Application.Dialogs(xlDialogWorkbookName).Show
End Sub
Вернуть всё обратно можно выполнив единственную инструкцию:
 
Application.OnKey Key:="^c"
А вот так можно заблокировать выполнение операции, связанной с нажатием стандартных горячих клавиш:
 
Application.OnKey Key:="^c", Procedure:=""
Вариант. Если Вас устроит сочетание таких клавиш, как CTRL + r или CTRL + SHIFT + R, то создать горячие клавиши для макроса можно и вручную. Для этого, при записи макроса в стандартном диалоговом окне Запись макроса в поле, которое размещено под надписью Сочетание клавиш: необходимо ввести нужную букву.
 
Программно это может выглядить так :
 
Sub Auto_Open()
    Application.MacroOptions Macro:="Printers", _
    HasShortcutKey:=True, ShortcutKey:="Q"
    ' Сочетание клавиш CTRL + SHIFT + Q (q)
End Sub
  
Sub Printers()
    Application.Dialogs(xlDialogPrinterSetup).Show
End Sub

Leave a Comment