Kann ein Subaufruf einen Fehler zurück geben?
Ein Makro ruft andere Makros auf, von denen eines einen Fehler erzeugt.
Das aufrufende Makro soll dann den zurückgegebenen Fehler als solchen verarbeiten.
Im folgenden Beispiel entsteht ein Fehler, weil durch Null dividiert wurde.
Sub Test()
On Error GoTo Warnung
Keller ("Eingang")
Dach (3)
Dach (0) 'Dieser Aufruf soll einen Fehler generieren
Keller ("Ausgang")
Exit Sub
Warnung:
'Folgende Zeilen sollen ausgeführt werden,
'wenn bisher ein Fehler aufgetreten ist
MsgBox "Abbruch wegen Fehler"
End Sub
Sub Keller(t As String)
Cells(2, 1) = t
End Sub
Sub Dach(a As Double)
On Error GoTo Abbruch
Cells(1, 1) = 5 / a
Exit Sub
Abbruch:
'Hier soll ein Fehler zurückgegeben werden
End Sub
Eine Möglichkeit wäre, eine gemeinsame Variable zu verwenden. Diese müsste dann aber nach jedem Subaufruf abgefragt werden, was ich mir ersparen möchte.
Wünschenswert wäre, den Fehler als solches zurückzugeben.