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

Forumthread: Fehler überspringen

Fehler überspringen
18.10.2016 09:45:38
Jonas
Hallo zusammen
Bei meinem Sub entsteht am Schluss ein Fehler, die Task, die ausgeführt werden soll, funktioniert aber einwandfrei. Gibt es die Möglichkeit, die Fehlermeldung zu überspringen / auszublenden / deaktivieren?
LG Jonas
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler überspringen
18.10.2016 09:49:12
UweD
Hallo
    On Error Resume Next

am Anfang geht immer.
Wenn du uns deinen Code zeigst, können wir dir evtl. helfen, das ganze anders zu lösen.
LG UweD
AW: Fehler überspringen
18.10.2016 09:50:58
KlausF
Hallo Jonas,
schreib am Anfang des Codes ein
On Error Resume Next
und am Ende des Codes ein
On Error GoTo 0
Gruß
Klaus
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Fehler in Excel VBA überspringen


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.
  2. Navigiere zu deinem Code: Finde das Modul, in dem sich dein VBA-Code befindet.
  3. Fehlerbehandlung einfügen:
    • Füge zu Beginn deines Sub-Prozedur den folgenden Code ein:
      On Error Resume Next
    • Dies sorgt dafür, dass bei einem Fehler der Code einfach weiterläuft, ohne eine Fehlermeldung anzuzeigen.
  4. Code ausführen: Dein Hauptcode kann hier folgen.
  5. Fehlerbehandlung beenden: Am Ende deines Codes solltest du folgendes einfügen:
    On Error GoTo 0
    • Dadurch wird die Fehlerbehandlung wieder auf den Standardzustand zurückgesetzt und alle weiteren Fehler werden wieder angezeigt.

Häufige Fehler und Lösungen

  • Fehler wird nicht übersprungen: Stelle sicher, dass On Error Resume Next an der richtigen Stelle deines Codes eingefügt ist. Es sollte vor dem potenziell fehlerhaften Code stehen.
  • Unbeabsichtigtes Ignorieren wichtiger Fehler: Überlege, ob du wirklich alle Fehler ignorieren möchtest. Manchmal ist es besser, spezifische Fehler zu behandeln, anstatt sie alle zu überspringen.

Alternative Methoden

  • Fehlerprotokollierung: Anstatt Fehler zu ignorieren, kannst du sie protokollieren, indem du sie in einer Fehlerprotokolldatei speicherst. Das ermöglicht dir, die Ursachen der Fehler später zu analysieren.

    On Error GoTo ErrorHandler
    
    ' Dein Code hier
    
    Exit Sub
    
    ErrorHandler:
      ' Fehlerbehandlung
      Debug.Print "Fehler " & Err.Number & ": " & Err.Description
  • Versuch und Fehler: Anstelle von On Error Resume Next kannst du auch eine If-Bedingung verwenden, um spezifische Fehler zu überprüfen, was mehr Kontrolle gibt.


Praktische Beispiele

Hier ist ein einfaches Beispiel, das zeigt, wie man beim Auftreten eines Fehlers in Excel VBA weitermacht:

Sub BeispielFehlerUebergehen()
    On Error Resume Next
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Worksheets("NichtVorhanden")
    If ws Is Nothing Then
        Debug.Print "Das Arbeitsblatt existiert nicht."
    End If
    On Error GoTo 0
End Sub

In diesem Beispiel wird der Fehler beim Zugriff auf ein nicht vorhandenes Arbeitsblatt ignoriert, und eine Nachricht wird in das Direktfenster ausgegeben.


Tipps für Profis

  • Verwende Fehlerbehandlungsroutinen sinnvoll, um spezifische Fehler zu erkennen, anstatt alle Fehler einfach zu ignorieren.
  • Dokumentiere deinen Code gut, insbesondere wenn du On Error Resume Next verwendest, damit andere (oder du selbst in der Zukunft) verstehen, warum bestimmte Fehler ignoriert werden.

FAQ: Häufige Fragen

1. Was bedeutet On Error Resume Next?
Dieser Befehl sagt Excel, dass es Fehler ignorieren soll und mit dem nächsten Befehl fortfahren soll. Dies kann nützlich sein, wenn du weißt, dass ein Fehler auftreten könnte, aber der Code trotzdem weiterlaufen soll.

2. Kann ich On Error Resume Next in einer Schleife verwenden?
Ja, du kannst es in Schleifen verwenden, aber sei vorsichtig, da es alle Fehler innerhalb der Schleife ignoriert. Es ist besser, spezifische Fehlerbehandlungsroutinen zu nutzen, wenn du die Kontrolle über den Code behalten möchtest.

3. Wie kann ich sicherstellen, dass ich keine wichtigen Fehler ignoriere?
Verwende On Error GoTo für spezifische Fehlerbehandlungen, anstatt alle Fehler mit On Error Resume Next zu ignorieren. So kannst du gezielt auf Probleme reagieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige