Hallo zusammen,
Ich habe den nachfolgenden VBA Code der soweit funktioniert.
Für die Übersichtlichkeit habe ich diesen auf das Nötigste minimiert.
Nun habe ich an diesem Code das Problem, dass mir die Ausführung nach dem End Sub erst wieder zurück zu End If (als E1 markiert) springt, diese Prozedur dann erneut ausführt und dann zu E2 springt, und auch diese Prozedur bis zum Ende erneut ausführt. Das soll allerdings nicht passieren, sondern der gesamte Prozess ab dem End Sub beendet werden.
Set myTableRange = Worksheets("Aufträge").Range("B3:X999999")
If Intersect(Target, myTableRange) Is Nothing Then GoTo SubSchluss
'Auftragsnummer abfragen und eintragen
If auftragStatus.Value = "abbuchen" Then
'Ausgabenummer sichern, E2
If auftragAusgabenr.HasFormula Then
{...}
End If [E2]
If auftragPreis.Value > "wird nicht angeboten" Then
'Lastschrift
If auftragRechnungsstatus = "Lastschrift" Then
{...}
Else
'Rechnung
If auftragRechnungsstatus = "Rechnung" Then
{...}
Else
msg = ...
GoTo SubSchluss
End If
End If
Else
msg = ...
GoTo SubSchluss
End If
{...}
End If [E1]
'Schützen und Sub beenden
SubSchluss:
Worksheets("Aufträge").Protect "a"
Application.StatusBar = False
Exit Sub
End Sub
Kann das einer nachvollziehen, warum er mir zurück zu den End-If springt oder welche Lösung gibt es, die Ausführung des VBA an Position des End-Sub zu beenden?
Danke im Voraus!
MB