Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1948to1952
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehler in VBA-Code - Überspringen und Fehlerliste erstellen

Fehler in VBA-Code - Überspringen und Fehlerliste erstellen
07.10.2023 15:32:35
Stefan
Hallo zusammen,

ich habe eine Excel-Datei mit fast 100 Tabellenblättern und einigen VBA-Codes.

Der Code zur Aktualisierung aller mehr als 200 PivotTabellen läuft auf meinem privaten PC aktuell eine - gestoppte - halbe Stunde.

Hier und da taucht auch mal ein Fehler auf (hängt mit der Datenqualität zusammen) und ich würde es gerne so haben, dass die Ausführung des Codes dann nicht jedes Mal angehalten wird und auf eine User-Reaktion wartet.
Vielmehr soll einfach stoisch weitergemacht werden und im Anschluss in einem bestimmten Tabellenblatt (z. B. "Fehler" genannt) die Fehler angezeigt werden (Tabellenblattname, Nr. der Pivottabelle, PivotField).

Wie kann ich das sehr einfach regeln?

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

Betreff
Datum
Anwender
Anzeige
AW: Fehler in VBA-Code - Überspringen und Fehlerliste erstellen
09.10.2023 16:31:10
daniel
Hi
z.B. so.

1. am Anfang des Code: On Error Resume Next
das bewirkt, das Makro bei einem Fehler nicht abbricht, sondern einfach weiter macht.
Ob ein Fehler passiert ist, kann man dann an der Variablen ERR festellten, welche nach einem Fehler dann die Fehlernummer enthält (kein Fehler = 0)

2. am Ende jedes sinnvollen Codeabschnitts (oder wenn du Schleifen hast, vor dem Schleifenende), machst du dann die Prüfung, ob im davor liegenden Abschnitt ein Fehler passiert ist, dazu die Zeilen einfügen:

If Err > 0 Then

with Sheets("fehler").Cells(Rows.count, ).End(xlup).Offset(1, 0)
.Offset(0, 0).value = err 'Fehlernummer
.Offset(0, 1).value = err$ 'Fehlertext
.Offset(0, 2).Value = "Dein Hinweitext, Abschnitt, Tabellenblatt usw"
End with
err = 0
End if


Gruß Daniel
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige