Отключение всех функциональных клавиш, кроме одной

Когда кто-то использует книгу Лоренцо, он хочет, чтобы пользователю была доступна только клавиша F2 . Он задается вопросом, есть ли способ отключить все функциональные клавиши в Excel, за исключением клавиши F2 ?

Есть способ, но он должен делать с помощью макросов. В частности, вы захотите использовать метод OnKey объекта Application. Этот код отключит все функциональные клавиши, за исключением F2 :

 Private Sub Workbook_Open () Application.OnKey "{F1}", "" Application.  OnKey "{F3}", "" Application.OnKey "{F4}", "" Application.OnKey "{F5}", "" Application.OnKey "{F6}", "" Application.OnKey "{F7}"  , "" Application.OnKey "{F8}", "" Application.OnKey "{F9}", "" Application.OnKey "{F10}", "" Application.OnKey "{F11}", "" Application.OnKey  "{F12}", "" End Sub 

Макрос должен быть добавлен в модуль ThisWorkbook, и он будет запускаться автоматически при открытии книги.

При желании , вы можете сделать макрос немного короче:

 Private Sub Workbook_Open () Dim sTemp As String Dim J As Integer For J = 1 to 12 If J  2 Then sTemp = "{F"  & Trim (Str (J)) & "}" Application.OnKey sTemp, "" End If Next JEnd Sub 

Вы также захотите убедиться, что при закрытии книги, которую вы -включить все функциональные клавиши. Этот макрос, опять же, следует добавить в модуль ThisWorkbook:

 Private Sub Workbook_BeforeClose (CANCEL As Boolean) Application.OnKey "{F1}" Application.OnKey "{F3}" Application.OnKey "  {F4} «Application.OnKey» {F5} «Application.OnKey» {F6} «Application.OnKey» {F7} «Application.OnKey» {F8} «Application.OnKey» {F9} «Application.OnKey» {F10  } "Application.OnKey" {F11} "Application.OnKey" {F12} "End Sub 

Вы также можете использовать более короткую версию того же кода:

  Private Sub Workbook_BeforeClose (CANCEL As Boolean) Dim sTemp As String Dim J As Integer For J = 1 to 12 If J  2 Then sTemp = "{F" & Trim (Str (J)) & "}" Application.OnKey sTemp  Конец, если следующий JEnd Sub 

Оцените статью
Frestage.ru
Добавить комментарий