2016-05-02 6 views
0

Große Entschuldigungen. Habe stundenlang nach dieser Antwort gesucht und finde sie nicht.Excel 2013 VBA Disable Escape-Taste

Ich habe verschiedene Möglichkeiten ausprobiert, um meinen Escape-Schlüssel in einem Arbeitsblatt zu deaktivieren.

Alle ohne Erfolg. Ich bin der Community beigetreten, um bitte um Hilfe zu bitten.

Ich habe

versucht
Application.EnableCancelKey = xLDisabled 

Und ich verwendet habe,

Application.OnKey "{ESC}", "" 

Ich will nicht die Escape-Taste in der gesamten Arbeitsmappe ausgeschaltet nur das Arbeitsblatt in dem ich mich.

Ich würde etwas Hilfe bitte begrüßen.

Ich bin kein produktiver VBA-Schriftsteller - es ist mehr, dass ich es für die Arbeit als ein Leben mache.

Danke

Nutty

+1

Abbrechen Key bezieht sich auf VBA Codeausführung, und beide, dass und 'OnKey' ist ein Application-Level-Einstellung so entweder Ansatz, den Sie bisher versucht haben, wird jede * Arbeitsmappe Affekt *, auch nachdem Sie die aktuelle Arbeitsmappe schließen . Welches spezifische Verhalten verhindern Sie eigentlich (und warum)? Ich frage, weil es andere/bessere Optionen gibt. –

+0

Entschuldigung, wenn ich einen Punkt vermisse, aber warum weisen Sie Ihrem application.onkey {"Esc"} Event keine Funktion zu und überprüfen Sie den activeWorksheet.Name? –

+0

David, ich möchte verhindern, dass Benutzer die Vollbildeinstellung ändern. Also habe ich eine Routine ausgearbeitet, die die Bildschirmgröße einstellt und die nicht wesentlichen Dinge in einem Arbeitsblatt deaktiviert und meine eigene Navigation bereitstellt. # – Nutty

Antwort

0

Sie für so etwas suchen sind?

Private Sub Workbook_Open() 
    If ActiveSheet.Name = "Sheet2" Then 
    Application.OnKey "{ESC}", "" 
    Else 
    Application.OnKey "{ESC}" 
    End If 
End Sub 

Private Sub Workbook_Activate() 
    If ActiveSheet.Name = "Sheet2" Then 
     Application.OnKey "{ESC}", "" 
    Else 
     Application.OnKey "{ESC}" 
    End If 
End Sub 

Private Sub Workbook_Deactivate() 
    Application.OnKey "{ESC}" 
End Sub 

Private Sub Workbook_BeforeClose(Cancel As Boolean) 
    Application.OnKey "{ESC}" 
End Sub 
+0

Ich denke, ich bin ja. Vielen Dank. Darf ich fragen. Ich glaube, ich habe mich etwas verwirrt. Das Menüband ist das einzige Element, das wieder erscheint, wenn ich die Escape-Taste drücke. Ich vermute, ich habe nicht verstanden, dass ich das Band auch deaktivieren muss? – Nutty