UserForm als MsgBox
#1
Hallo leibe Community,

Ich brauche mal wieder eure Hilfe. Ich habe eine UserForm erstellt um Sie als MsgBox einzusetzen.
Das Funktioniert auch nur möchte Ich jetzt einen Countdown in die UserForm packen.

Problem Ich brauch die UserForm mehr als einmal also muss auch jedes mal ein anderer Countdown ablaufen.
Ich habe es schon hinbekommen das ein Countdown läuft, aber nicht mehrere.
Sprich Ich müsste 6 UserFormen erstellen und das will Ich aber nicht.

Wüsstet Ihr hier weiter?

Lg Florian

PS Hier noch mein Code wie Ich es mit einem Countdown gemacht habe.
aber wie gesagt es fehlen dann noch 5 weitere.

Private Sub Timer()
'Startet die Userform als MsgBox mit Timer und Countdown
Call prcTimerStop
Dim Zeit As Long
Zeit = 10
Label2.Caption = Zeit
Do While Zeit > 0
    Zeit = Zeit - 1
    Application.Wait (Now + TimeValue("0:00:01"))
    TimerMsg.Repaint
    Label2.Caption = Zeit
Loop
  Unload Me
  Call prcTimerStart
End Sub
Top
#2
Code:
Sub M_snb()
    CreateObject("Wscript.shell").Popup "warte mal, bitte ....", 5
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#3
Hi,

Das habe Ich schon gemacht das geht aber nicht da meine Zeit zum schließen eine Vraiable ist.
Die Zeit wird zwar in der MsgBox angezeigt aber der Timer läuft nicht ab.

lg Flo
Top
#4
PS.
Deswegen habe Ich ja eine UserForm erstellt.
Top
#5
Code:
Sub M_snb()
  y =3
  CreateObject("Wscript.shell").Popup "Bitte, warte mal " & y & " Sekunden", y
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Top
#6
Hallo Florian,

Du kannst von einer Sub auf die andere Parameter übergeben zum Beispiel so

Code:
Private Sub Timer(lngUebergabeZeit As Long)
'Startet die Userform als MsgBox mit Timer und Countdown
Call prcTimerStop
Dim Zeit As Long
Zeit = lngUebergabeZeit
Label2.Caption = Zeit
Do While Zeit > 0
    Zeit = Zeit - 1
    Application.Wait (Now + TimeValue("0:00:01"))
    TimerMsg.Repaint
    Label2.Caption = Zeit
Loop
  Unload Me
  Call prcTimerStart
End Sub


Sub prc10Sekunden()
   Dim lngZeit As Long
  
   lngZeit = 10
   Timer lngZeit
End Sub
Sub prc9Sekunden()
   Dim lngZeit As Long
  
   lngZeit = 9
   Timer lngZeit
End Sub
Sub prc8Sekunden()
   Dim lngZeit As Long
  
   lngZeit = 8
   Timer lngZeit
End Sub
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • Florian20
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste