Unload bei Exit Sub funktioniert nur beim Debuggen
12.02.2024 10:26:25
fahrstuhl
wenn ich mit folgendem Code, wenn die If Bedingung erfüllt ist im Debug Modus mit
Haltepunkten durchgehe, wird das Userform ordnungsgemäß entladen. Nach dem dann
erreichen "End Sub" wird es aber wieder eingeblendet....Warum ? Wenn ich das Makro
aus Excel aufrufe, macht er alles, aber das Form bleibt eben dann auch stehen für den
User.
Was ist an dem Code falsch - kann mir da einer mal auf die Sprünge helfen.
Private Sub CommandButton1_Click()
' die benötigten Variablen
Dim Monat As String
Dim Marktwert As Double
Dim BlattName As String
' Fehlerbehandlung
On Error GoTo Eingabefehler
' Werte erfassen
Monat = ComboBox1.Value
Marktwert = TextBox1.Value
' den Monat Verteilung_Vergütung_MONAT finden
Dim x As Long
Application.ScreenUpdating = True
For x = 1 To Worksheets.Count
BlattName = Worksheets(x).Name
If InStr(BlattName, Monat) > 0 Then
Worksheets(BlattName).Cells(2, 2).Value = Marktwert
Unload DV_Eingabe_Userform
Exit Sub
End If
Next
GoTo Eingabefehler
' die Funktion verlassen, wenn kein Fehler aufgetreten ist
Exit Sub
' Messagebox anzeigen, wenn keine Eingaben oder Monat gemacht worden sind oder was fehlt
Eingabefehler: MsgBox "Es gibt kein Tabellenblatt fuer diesen Monat oder es ist kein Monat oder Marktwert eingetragen worden!", vbCritical