Zum Hauptinhalt springen

Fortsetzen der Ausführung in Excel VBA, wenn ein Fehler auftritt

Beim Ausführen von Excel in VBA können viele Fehler auftreten, die die Ausführung des Programms unterbrechen können. Dies kann durch falsche Eingaben, Dateiverfügbarkeit oder andere Probleme verursacht werden. Mit der Fehlerbehandlung in VBA können Sie das Programm jedoch auch dann fortsetzen, wenn ein Fehler auftritt.

Eine Möglichkeit, Fehler zu behandeln, besteht darin, das "On Error" -Konstrukt zu verwenden. Mit diesem Konstrukt können Sie einen Codeblock definieren, in dem Fehler behandelt werden. Wenn in diesem Codeblock ein Fehler auftritt, wird die Ausführung des Programms nicht unterbrochen, sondern zum Verarbeitungsblock weitergeleitet.

Wenn Sie das On Error-Konstrukt verwenden, können Sie verschiedene Fehlerbehandlungsmodi festlegen. Sie können beispielsweise den Modus "Weiter fortsetzen" auswählen, in dem die Ausführung des Programms unmittelbar nach der Zeile fortgesetzt wird, in der der Fehler aufgetreten ist. Es ist auch möglich, einen speziellen Codeblock anzugeben, der im Falle eines Fehlers ausgeführt wird.

Beispiel für die Verwendung eines "On Error" -Konstrukts:

On Error Resume Next

'code, der einen Fehler verursachen kann

'.

'fehlerbehandlung

'.

On Error GoTo 0

Bei der Fehlerbehandlung ist es wichtig, potenzielle Probleme zu berücksichtigen und geeignete Szenarien zu berücksichtigen. In einigen Fällen kann es hilfreich sein, ein Fehlerprotokoll zu erstellen oder dem Benutzer Fehlermeldungen anzuzeigen. In jedem Fall ermöglicht die Fehlerbehandlung in Excel VBA eine flexiblere Verwaltung der Programmausführung und verbessert die Zuverlässigkeit Ihres Codes.

Fehlerbehandlung in Excel VBA

Beim Schreiben von Makros auf VBA in Excel können Fehler auftreten, die dazu führen können, dass das Programm nicht mehr ausgeführt wird. Um diese Situation zu vermeiden und einen stabileren Betrieb zu gewährleisten, können Sie die Fehlerbehandlung verwenden.

Die Fehlerbehandlung in Excel VBA ermöglicht es Ihnen, auftretende Ausnahmen abzufangen und zusätzliche Anweisungen für die Verarbeitung bereitzustellen. Im Falle eines Fehlers kann das Programm die Ausführung fortsetzen, indem es die Ausnahme ignoriert oder bestimmte Aktionen ausführt, um die Arbeit wiederherzustellen.

Excel verwendet das On Error-Konstrukt, um Fehler in VBA zu behandeln. Wenn ein Fehler auftritt, springt die Programmausführung zu dem Codeblock, der nach dem Schlüsselwort On Error angegeben wurde. Hier können Sie mehrere Optionen für die Fehlerbehandlung angeben:

StichwortDie Beschreibung
ResumeDas Programm wird von der gleichen Zeile fortgesetzt, in der der Fehler aufgetreten ist.
Resume NextDas Programm wird mit der nächsten Zeile nach der Zeile fortgesetzt, in der der Fehler aufgetreten ist.
Resume labelDas Programm wird mit dem nach dem Resume-Schlüsselwort angegebenen Label fortgesetzt.
On Error GoTo 0Deaktiviert die Fehlerbehandlung und gibt das standardmäßige Programmverhalten zurück.
On Error GoTo labelÜbersetzt die Programmausführung in die Bezeichnung, die nach dem Schlüsselwort On Error GoTo angegeben ist.
On Error Resume NextDas Programm wird nach der Zeile fortgesetzt, in der der Fehler aufgetreten ist, und es wird keine Fehlermeldung angezeigt.

Sie können Verzweigungsoperatoren (If) verwenden, um den Code einfacher und lesbarer zu machen. Then. Else) innerhalb eines Fehlerbehandlungsblocks, um abhängig von der Art des festgelegten Fehlers oder anderen Bedingungen verschiedene Aktionen auszuführen.

Wenn Sie wissen, wie Sie mit Fehlern in Excel VBA umgehen, können Sie Programme zuverlässiger und fehlerresistenter machen. Dies ist ein wichtiger Aspekt bei der Entwicklung von Makros, der hilft, mögliche Ausnahmesituationen zu erkennen und zu behandeln.

Verwenden des On Error-Konstrukts

VBA Excel verfügt über ein Konstrukt On Error Damit können Sie die Fehlerbehandlung im Code steuern. Mit diesem Konstrukt können Sie bestimmen, wie der Fehler behandelt wird, wenn er auftritt.

Das On Error-Konstrukt besteht aus mehreren Schlüsselwörtern:

  • On Error Resume Next - wenn ein Fehler auftritt, springt er zur nächsten Codezeile, ohne die Ausführung des Programms zu stoppen;
  • On Error GoTo 0 - deaktiviert die Fehlerbehandlung und gibt das Verhalten des Programms auf das Standardverhalten zurück;
  • On Error GoTo label - leitet die Programmausführung auf das Label um label, um den aufgetretenen Fehler zu behandeln;
  • On Error GoTo 0 - deaktiviert die Fehlerbehandlung und gibt das Verhalten des Programms auf das Standardverhalten zurück;

Das Konstrukt wird verwendet, um den Fehler zu behandeln und die Ausführung des Programms fortzusetzen On Error Resume Next. Dies ist in Situationen nützlich, in denen Sie einen Fehler überspringen und zur nächsten Codezeile springen möchten.

Beispiel für die Verwendung des On Error Resume Next-Konstrukts:

On Error Resume Next. 'код, в котором ожидается возникновение ошибки. If Err.Number <> 0 Then'обработка ошибки. End IfOn Error GoTo 0

Um die Programmausführung auf eine Beschriftung umzuleiten und den Fehler zu behandeln, wird ein Konstrukt verwendet On Error GoTo. Dies ist nützlich, wenn Sie bestimmte Aktionen ausführen möchten, wenn ein Fehler auftritt.

Beispiel für die Verwendung des On Error GoTo-Konstrukts:

On Error GoTo ErrorHandler. 'код, в котором ожидается возникновение ошибки. Exit SubErrorHandler:'обработка ошибки. Resume Next

In diesem Beispiel, wenn ein Fehler auftritt, gehen wir zum ErrorHandler, wo der Fehler behandelt wird. Verwenden Sie anschließend den Befehl Resume Next, um das Programm mit der nächsten Codezeile fortzusetzen.

Mit dem On Error-Konstrukt können Sie das Auftreten und die Behandlung von Fehlern im Excel-VBA-Code effizient verwalten. Sie können die am besten geeignete Option für Ihr Programm wählen, abhängig von den Anforderungen und Besonderheiten der Arbeit.