167 Stimmen

Excel VBA App stoppt spontan mit der Meldung "Codeausführung wurde angehalten".

Von dem, was ich im Web sehen kann, ist dies eine ziemlich häufige Beschwerde, aber Antworten scheinen seltener zu sein. Das Problem ist folgendes:

Wir haben eine Reihe von Excel VBA-Apps, die auf einer Reihe von Benutzermaschinen perfekt funktionieren. Auf einem bestimmten Rechner stoppen sie jedoch an bestimmten Codezeilen. Es sind immer die gleichen Zeilen, aber diese Zeilen scheinen nichts miteinander gemein zu haben.

Wenn Sie nach dem Halt F5 (ausführen) drücken, läuft die App weiter, daher wirkt es fast so, als ob ein Haltepunkt hinzugefügt wurde. Wir haben versucht, "Alle Haltepunkte entfernen" im Menü auszuwählen und sogar einen Haltepunkt hinzuzufügen und wieder zu entfernen.

Wir hatten dieses Problem schon bei einzelnen Apps zuvor und haben es durch Ausschneiden von Code aus Modulen, Kompilieren und anschließendes Einfügen usw. 'hingebogen'.

Das Problem scheint nun eher mit Excel selbst als mit einer einzelnen .xls-Datei zusammenzuhängen, daher sind wir uns ein wenig unsicher, wie wir damit umgehen sollen.

Jede Hilfe wäre willkommen :)

Vielen Dank,

Philip Whittington

448voto

Stan Punkte 4786

Ich habe eine zweite Lösung gefunden.

  1. Drücken Sie die Schaltfläche "Debug" im Popup-Fenster.
  2. Drücken Sie zweimal Strg+Pause|Pause.
  3. Drücken Sie die Wiedergabetaste, um fortzufahren.
  4. Speichern Sie die Datei nach Abschluss.

17voto

user2052260 Punkte 179

Dieses Problem stammt aus einer seltsamen Eigenart von Office/Windows.

Nachdem ich denselben VBA-Code entwickelt und ihn in den letzten paar Tagen hunderte Male (buchstäblich) ausgeführt habe, bin ich gerade auf dieses Problem gestoßen. Das Einzige, was anders war, ist, dass ich kurz bevor ich mit diesem verwirrenden Problem konfrontiert wurde, die Ausführung des VBA-Codes versehentlich mit einer unorthodoxen Methode beendet habe.

Ich habe alle temporären Dateien gelöscht, neu gestartet, usw... Als ich den Code nach all dem erneut ausführte, hatte ich immer noch das Problem - noch bevor ich in die erste Schleife eingetreten bin. Es ergibt Sinn, dass "die Schaltfläche 'Debuggen' im Popup-Fenster drücken, dann zweimal [Strg+Pause] drücken und danach ohne Unterbrechungen fortsetzen", weil irgendetwas in der Kombination von Office/Windows die Ausführung nicht freigegeben hat. Es hängt fest.

Die überflüssige Aktion Strg+Pause löst wahrscheinlich die hartnäckige Ausführung auf.

16voto

Stan Punkte 4786

Eine Lösung finden Sie hier:

Die Lösung für dieses Problem besteht darin, die Zeile Code "Application.EnableCancelKey = xlDisabled" in der ersten Zeile Ihres Makros hinzuzufügen. Dies wird das Problem beheben und Sie werden in der Lage sein, das Makro erfolgreich auszuführen, ohne die Fehlermeldung "Codeausführung wurde unterbrochen" zu erhalten.

Aber nachdem ich diese Zeile Code eingefügt hatte, konnte ich nicht mehr Ctrl+Break verwenden. Es funktioniert, aber nicht optimal.

10voto

James Punkte 101

Ich habe festgestellt, dass das Drücken von Strg+Pause, während die Makro nicht ausgeführt wurde, das Problem behoben hat.

3voto

Charles Williams Punkte 22470

Ich würde die üblichen remedial Dinge ausprobieren: - Führen Sie Rob Boveys VBA Code Cleaner auf Ihrem VBA-Code aus - Entfernen Sie alle Add-Ins auf dem Benutzer-PC, insbesondere COM- und .NET-Add-Ins - Löschen Sie alle Benutzer .EXD-Dateien (MSoft Update-Inkompatibilitäten) - Führen Sie Excel Detection & Repair auf dem Benutzersystem aus - Überprüfen Sie die Größe der Benutzer .xlb-Datei (sollte 20-30 KB betragen) - Starten Sie dann neu und löschen Sie alle Benutzer-Temp-Dateien

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X