Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: ESC Taste ausschalten

ESC Taste ausschalten
21.08.2006 14:44:17
WalterK
Guten Tag,
ich wollte in mein Makro am Anfang die Taste "ESC" ausschalten und am Ende wieder einschalten, damit man das Makro nicht unterbrechen kann, somit der Nutzer nicht ins Makro schauen kann.
Leider ging das so nicht:

Sub ESC_WEG()
SendKeys "{ESC}", False
End Sub


Sub ESC_REIN()
SendKeys "{ESC}", True
End Sub

Vielleicht kann mir jemand helfen oder einen Vorschlag machen ?
Gruß WalterK
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ESC Taste ausschalten
21.08.2006 14:46:31
u_
Hallo,
Application.enablecancelkey=xldisabled
Aber Vorsicht damit.
Gruß
Lesen gefährdet die Dummheit
Was ...
21.08.2006 15:04:18
WalterK
Hallo U,
was heißt Vorsicht ?
gruß WalterK
AW: Was ...
21.08.2006 15:16:46
Jens
Hallo Walter
Vorsicht ist deshalb geboten, da ein Abruch eines Makros durch die ESC-Taste dann nicht mehr möglich ist. Bei einer auftretenden Endlos-Schleife z.B. würdest du vor einem Problem stehen.Dann wäre ein Abruch nur möglich, indem Du Excel ganz beenden würdest.
Deshalb nutze besser den Projektschutz.
Aber wie u_ schon erwähnte: Zwar unzureichend, (aber welcher Schutz ist schon sicher... ), jedoch ausreichend für deine Zwecke.
Davon ab: Wer Daten haben will, der bekommt sie auch, egal welcher Schutz dahinter steht.
Gruß
Jens
Anzeige
Hallo Jens,
21.08.2006 15:23:05
WalterK
Hallo Jens,
Danke für die ausführliche Info.
Werde dann mal sehen was ist.
Überings, habe die Zeile so eingefügt:
Application.EnableCancelKey = xlDisabled
und wollte dann per Makro eine Box aufrufen, konnte mit der ESC-Taste beenden.
gruß WalterK
Zusatz
21.08.2006 14:48:39
u_
Hallo,
warum nutzt du nicht den Projektschutz? Auch wenn der nur unzureichend ist.
Besser als deine Methode, da man Makros ja nicht unbedingt ausführen muss. Und dann?
Gruß
Lesen gefährdet die Dummheit
Anzeige
AW: ESC Taste ausschalten
21.08.2006 14:51:34
Andi
Hi,
wenn Du nicht willst, dass der user Deinen Code anschaut, dann schütze ihn doch mit einem Passwort.
Schönen Gruß,
Andi
Ja Andi, aber...
21.08.2006 15:07:33
WalterK
Hallo Andi,
das VBA ist nicht geschützt, da ich einige Sheet und Module per Makro
exportieren, muß.
gruß WalterK
AW: Ja Andi, aber...
21.08.2006 15:45:21
Andi
Hi,
guck mal hier:
https://www.herber.de/forum/messages/793808.html
in dem thread is ein Makro gepostet, das ein Projektschutz-Passwort setzt; in der Recherche solltest Du ein vergleichbares finden, mit dem Du das Passwort rausnehmen kannst. Wenn Du Dein Export-Makro entsprechend ergänzt, dann kannst Du trotz Projektschutz exportieren.
Schönen Gruß,
Andi
Anzeige
Danke für das Beispiel !!!
21.08.2006 16:18:49
WalterK
Hallo Andi,
Danke für das Beispiel, werde jetzt mal in der Recherche suchen,
Gruß WalterK
;
Anzeige
Anzeige

Infobox / Tutorial

ESC Taste in Excel ausschalten und verwalten


Schritt-für-Schritt-Anleitung

Um die ESC-Taste in Excel zu deaktivieren, kannst du die folgende Methode verwenden. Diese ist besonders sinnvoll, wenn du ein Makro ausführen möchtest, das nicht unterbrochen werden soll:

  1. Öffne den VBA-Editor mit ALT + F11.

  2. Füge ein neues Modul hinzu, indem du im Projektfenster mit der rechten Maustaste auf "Module" klickst und "Einfügen" > "Modul" wählst.

  3. Füge den folgenden Code ein:

    Sub ESC_deaktivieren()
        Application.EnableCancelKey = xlDisabled
    End Sub
    
    Sub ESC_aktivieren()
        Application.EnableCancelKey = xlInterrupt
    End Sub
  4. Rufe ESC_deaktivieren auf, bevor dein Makro startet, und ESC_aktivieren, wenn es abgeschlossen ist.

Diese Methode sorgt dafür, dass die ESC-Taste während der Ausführung deines Makros nicht funktioniert.


Häufige Fehler und Lösungen

  • ESC-Taste funktioniert nicht:
    Stelle sicher, dass du Application.EnableCancelKey korrekt eingestellt hast. Wenn du xlDisabled verwendest, wird die ESC-Taste deaktiviert. Bei Bedarf kannst du sie mit xlInterrupt wieder aktivieren.

  • Makro lässt sich nicht stoppen:
    Wenn dein Makro eine Endlosschleife hat und die ESC-Taste deaktiviert ist, kannst du Excel nur durch einen Abbruch über den Task-Manager schließen.


Alternative Methoden

Falls du die ESC-Taste nicht dauerhaft deaktivieren möchtest, kannst du auch die Projektschutz-Funktion verwenden. Dies schützt deinen Code vor ungewolltem Zugriff, auch wenn die ESC-Taste weiterhin funktioniert. Du kannst den Projektschutz in den Excel-Optionen aktivieren:

  1. Gehe zu "Überprüfen" > "Blatt schützen".
  2. Setze ein Passwort, um den Zugriff zu beschränken.

Praktische Beispiele

Hier ein Beispiel, wie du die ESC-Taste in einem Makro nutzen kannst:

Sub BeispielMakro()
    ESC_deaktivieren
    ' Dein Code hier
    Application.Wait (Now + TimeValue("0:00:05")) ' 5 Sekunden warten
    ESC_aktivieren
End Sub

In diesem Beispiel wird die ESC-Taste für die Dauer des Makros deaktiviert, und nach 5 Sekunden wird sie wieder aktiviert.


Tipps für Profis

  • Verwende On Error-Anweisungen, um Fehler abzufangen und sicherzustellen, dass die ESC-Taste immer wieder aktiviert wird, selbst wenn ein Fehler auftritt.
  • Berücksichtige beim Umgang mit der ESC-Taste, dass Benutzer möglicherweise in einer kritischen Situation die Möglichkeit haben sollten, ein Makro abzubrechen. Überlege, wie du dies sicher umsetzen kannst.

FAQ: Häufige Fragen

1. Wo ist die ESC-Taste?
Die ESC-Taste befindet sich in der oberen linken Ecke deiner Tastatur.

2. Kann ich die ESC-Taste in Excel auch für andere Zwecke nutzen?
Ja, du kannst die ESC-Taste in Excel für verschiedene Aufgaben verwenden, indem du eigene Makros erstellst, die auf ihre Betätigung reagieren.

3. Was passiert, wenn ich die ESC-Taste deaktiviere?
Wenn du die ESC-Taste deaktivierst, kann der Benutzer das Makro nicht abbrechen, was in bestimmten Situationen problematisch sein kann. Daher solltest du immer die Möglichkeit einplanen, die ESC-Taste wieder zu aktivieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige