Désactivation de toutes les touches de fonction sauf une (Microsoft Excel)
Quand quelqu’un utilise le classeur de Lorenzo, il souhaite que seule la touche F2 soit accessible à l’utilisateur. Il se demande s’il existe un moyen de désactiver toutes les touches de fonction dans Excel, à l’exception de la touche F2?
Il existe un moyen, mais cela doit être fait à l’aide de macros. Plus précisément, vous souhaiterez utiliser la méthode OnKey de l’objet Application. Ce code désactivera toutes les touches de fonction à l’exception de 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
La macro doit être ajoutée au module ThisWorkbook et elle s’exécutera automatiquement à l’ouverture du classeur.
Si vous le souhaitez, vous pouvez raccourcir un peu la macro:
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 J End Sub
Vous voudrez également vous assurer que lorsque vous fermez le classeur, vous réactivez toutes les touches de fonction. Cette macro, encore une fois, devrait être ajoutée au module 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
Vous pouvez également utiliser une version plus courte du même code:
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 End If Next J End Sub
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (13523) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365.