Thema Datum  Von Nutzer Rating
Antwort
06.02.2023 14:17:24 Bernd
Solved
06.02.2023 15:27:55 Gast27648
Solved
Rot Userform Commandbutton in Makro übergeben
06.02.2023 21:50:24 xlKing
Solved
07.02.2023 13:46:30 Bernd
Solved
08.02.2023 00:05:12 xlKing
NotSolved
08.02.2023 09:00:52 Gast85786
NotSolved

Ansicht des Beitrags:
Von:
xlKing
Datum:
06.02.2023 21:50:24
Views:
879
Rating: Antwort:
 Nein
Thema:
Userform Commandbutton in Makro übergeben

Naja, das geht zwar. Aber Visible ist hier suboptimal, weil dadurch das Userform neu geladen wird um diese Eigenschaft abfragen zu können. Wenn das Form ein Initialize-Ereignis hat wird dieses erneut ausgeführt und das Form muss dann auch wieder entladen werden.

Das Problem ist übrigens ein Klassiker. Auch ich habe vor Jahren Stunden mit der Lösungssuche verbracht bis ich seinerzeit auf die Möglichkeit von globalen Variablen gestoßen bin. Was du brauchst ist genau eine solche, in die du reinschreibst, dass du das Formular abgebrochen hast. Die darf aber nicht genauso heißen wie der Userformbutton, sonst hängst du in einer Dauerschleife.

Code im allgemeinen Modul

Public Canceled As Boolean
Sub Test()
 
 Userform1.Show
 If Canceled = True Then
   GoTo Beendet
 Else
 End If
 Exit Sub
Beendet:
 MsgBox "Test"
End Sub
 

Code im Userform

Private Sub Abbruch_Click()
'Übernahme = 0 ' Diese Variable wollte ich ers im Makro verwerten, funktioniert aber auch nicht.
Canceled = True
Unload Userform1
End Sub

PS: Goto verwendet man heutzutage nur noch im Zusammenhang mit On Error. Für andere Sachen heißt es Bedingung richtig definieren, Subs verwenden und im Notfall Exit Sub ausführen. Ist aber letztendlich eine Geschmackssache.

Gruß Mr. K.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
06.02.2023 14:17:24 Bernd
Solved
06.02.2023 15:27:55 Gast27648
Solved
Rot Userform Commandbutton in Makro übergeben
06.02.2023 21:50:24 xlKing
Solved
07.02.2023 13:46:30 Bernd
Solved
08.02.2023 00:05:12 xlKing
NotSolved
08.02.2023 09:00:52 Gast85786
NotSolved