Thema Datum  Von Nutzer Rating
Antwort
Rot Countdown/ Schleife
27.12.2016 19:18:07 LindaK
NotSolved
28.12.2016 07:45:35 SJ
Solved
16.05.2017 13:21:30 LindaK
NotSolved
16.05.2017 14:42:47 SJ
NotSolved

Ansicht des Beitrags:
Von:
LindaK
Datum:
27.12.2016 19:18:07
Views:
1396
Rating: Antwort:
  Ja
Thema:
Countdown/ Schleife

Hallo zusammen,

ich versuche gerade ein Programm in Excel zu schreiben, welches nach 5 Minuten einen bestimmten Wert überprüft und je nach Bedingung eine Prozedur ausführt bzw. das Programm endet. Durch Hilfe in diesem Forum habe ich bereits den Countdown programmieren können.

Nachdem der Countdown null erreicht soll sich eine Userform öffnen, die den Nutzer auffordert einen Wert einzugeben. Ist der Wert <= 8 so kann das Programm geschlossen werden. Ist der Wert jedoch >= 8 soll der Countdown ein weiteres Mal starten. Dieses Mal aber 10 Minuten (Schleife - also 5 Minuten + 5 Minuten) bevor der Wert erneut überprüft und in das UserForm eingegeben wird. Somit soll sich immer, wenn der Wert nicht <= 8 ist, der Countdown um 5 Minuten lverlängern (5min, 10min, 15min, 20min, 25min usw.), bis der Wert schließlich <= 8 anzeigt. Ausgelöst werden soll der Countdown durch das OK-klicken einer Messagebox.

Folgenden Code habe ich bereits:

Tabelle:

Private Sub CommandStarten_Click()

Starten

End Sub


Modul:


Public Declare Sub Sleep Lib "kernel32" (ByVal Milliseconds As Long)

Sub Starten()

Dim datStart As Date, datEnde As Date
     
    datStart = Now
    datEnde = datStart + TimeValue("00:00:10")
     
    Do While Now <= datEnde
        Sleep (1000)
        Tabelle1.TextBox1 = Format(datEnde - Now, "Hh:Nn:Ss")
        DoEvents
    Loop
    
If Tabelle1.TextBox1.Text = TimeValue("00:00:01") Or 0 Then
    UserForm1.Show
End If
    
End Sub

 

UserForm:

Private Sub CommandButtonPruefenWert_Click()
Dim messwert As Integer
Dim a As String
Dim b As String

messwert = TextBoxEingabeMesswert
Tabelle2.Range("A2").Value = TextBoxEingabeMesswert.Text
TextBoxEingabeMesswert.Text = ""

If messwert <= "8" Then
    a = MsgBox("Ende! Das Programm wird geschlossen.", vbOKOnly, "Beenden")
Else
    b = MsgBox("Wiederholung!", vbOKOnly, "Wiederholen")
End If

'  If a = vbOK Then ThisWorkbook.Close
If b = vbOK Then SpuelungStarten

 

Ich freue mich, wenn mir jemand helfen kann.

Gerne auch mit einen Beispielcode.

Grüße

 


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
Rot Countdown/ Schleife
27.12.2016 19:18:07 LindaK
NotSolved
28.12.2016 07:45:35 SJ
Solved
16.05.2017 13:21:30 LindaK
NotSolved
16.05.2017 14:42:47 SJ
NotSolved