Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1324to1328
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Counter als Userform beim starten
13.08.2013 16:38:49
mikey

Hallo
ich würde gerne eine userform in vollbild beim starten meines Excel files erstellen.
Den code dazu habe ich schon gefunden. Die beispiel datei habe ich auch hochgeladen.
Möchte keine Abfragen und das es nicht möglich ist die Userform mit x oben zu schließen oder abzubrechen.
Vielleicht könnt ihr mir da weiterhelfen.
https://www.herber.de/bbs/user/86836.xlsm
'In DieseArbeitsmappe
Option Explicit
Private Sub Workbook_Open()
Application.Visible = False
UserForm1.Show
End Sub

'---------------------------------------------------
'---------------------------------------------------
'In ein Modul
Option Explicit
Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Public Const SM_CXSCREEN = 0
Public Const SM_CYSCREEN = 1
'---------------------------------------------------
'---------------------------------------------------
'In Dekleration der Userform
Private Sub UserForm_Initialize()
Me.Left = 0
Me.Top = 0
Me.Height = GetSystemMetrics(SM_CYSCREEN) * 0.75
Me.Width = GetSystemMetrics(SM_CXSCREEN) * 0.75
End Sub

Nur beim Counter bin ich restlos überfordert.
Ich möchte einfach das die Userform erscheint und dort von 30 Sekunden rückgezählt wird.
Dann schließt sich die Userform automatisch, man sollte sie nicht abbrechen können.
anbei der code den ich gefunden habe.
Option Explicit
Dim i As Date
Dim lngZaehler As Long
Dim Erledigt As Double
Dim zeit1, zeit2, zeit3 As Date
Dim Rundung, Ingtext As String
Dim IngZeit As Date
Dim IngAnzahl%, h%, IngStart%
Sub Start()
UserForm1.Label1.Width = 0
UserForm1.Show
End Sub
Sub CountDown()
Sheets("Tabelle1").Select
If h = 0 Then
IngZeit = InputBox("Bitte Länge des Countdowns eintragen!" & Chr(10) & "Standartwert entsricht 15 Minuten.", "Bitte Länge im Format eingeben", "00:15:00")
IngAnzahl = InputBox("Wie oft soll der Countdown laufen?" & Chr(10) & "Standartwert entspricht 2 Durchläufe.", "Bitte nur ganze Zahlen", "2") + 1
Ingtext = "Möchten Sie abbrechen?" & Chr(10) & "Ihre Einstellungen:" & Chr(10) & IngAnzahl - 1 & " Durchläufe á " & IngZeit & " Stunden."
If MsgBox(Ingtext, vbYesNo) = vbYes Then
Exit Sub
End If
End If
zeit1 = Time
zeit2 = zeit1 + IngZeit
If h 0 Then
IngAnzahl = h
End If
For h = IngAnzahl To 1 Step -1
If h = 1 Then
Exit Sub
ElseIf h >= 2 And UserForm1.Visible = False Then
UserForm1.Show
End If
For i = zeit1 To zeit2 Step ("00:00:01")
zeit3 = -(TimeValue(i) - TimeValue(zeit2))
lngZaehler = lngZaehler + 1
Erledigt = (zeit2 - i) / (zeit2 - zeit1)
UserForm1.Label2.Caption = "Die Zeit läuft!" & Chr(10) & " Restzeit: " & zeit3
With UserForm1
If .Caption Format(Erledigt, "0%") Then
.Caption = Format(Erledigt, "0%") & " der Zeit übrig!"
.Label1.Width = Erledigt * (.Frame1.Width - 10)
End If
End With
If i > Time Then
Application.Wait (i)
End If
DoEvents
Next
Unload UserForm1
UserForm1.Hide
Next
h = 0
'***hier kann man weitere Funktionen einbauen nach dem Ablauf des Timers!***
End Sub

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Counter als Userform beim starten
13.08.2013 17:00:51
Balder
Hey Mikey,
um eine Userform nicht über x zu schließen:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then
Cancel = 1
End If
End Sub

um Userform nach Zeit (30 Sekunden) zu schließen:

Sub CountDown()
Application.Wait Now + TimeSerial(0, 0, 30)
Unload UserForm1
End Sub

...alles andere in der Datei kannst du entfernen. Dann nur noch dein Workbook_Open und Userform_Initialize hinzufügen; fertig.
Gruß
Balder

AW: Counter als Userform beim starten
13.08.2013 17:49:59
Matze
Hi mikey,
Im Diese Arbeitsmappe das starten der UF anlegen
In der UF wenn diese aufgerufen wird die Zeit eingeben,
und über ein Makro diese Beenden.
https://www.herber.de/bbs/user/86838.xlsm
Matze
war das so gemeint?

Anzeige
AW: Counter als Userform beim starten
14.08.2013 14:12:08
mikey
hallo
danke für die rasche antwort, ja ich möchte gerne diese Userform in vollbild mit meinem Excel File mitstarten. Es soll jedoch automatisch ohne Eingabe ablaufen, d.h. Es soll gleich am Anfang ein Counter mit 30 Sekunden erscheinen der rückwärts zählt ohne das ich was eingeben muss und nach 30 sekunden
soll sich die userform wieder schließen ohne das ich es vorher beenden kann.
könnt ihr mir dabei bitte helfen, ich weiß leider nicht so genau wie ich den code anpassen kann.

AW: Counter als Userform beim starten
15.08.2013 16:06:25
mikey
hallo
kann mir jemand dabei helfen das ich die eingabe prozedur aus dem makro code löschen kann,
damit das makro ohne eingabe der daten von alleine beim starten von excel startet
danke

Anzeige
AW: Counter als Userform beim starten
15.08.2013 18:54:27
Matze
Hi Mikey,
der Durchlauf geht nur 1 mal
https://www.herber.de/bbs/user/86871.xlsm
Matze
Ps.:Wenn du weitere Fragen hast, dann mach dort wo du auch den Beitrag schreibst einen Haken in das
kleine Kästchen , gleich neben Passwort! Dann wird der Beitrag als "offen" gekennzeichnet und Jeder kann den dann sehen.

AW: Counter als Userform beim starten
15.08.2013 22:40:36
mikey
Hallo
super danke für das File, habe es schon ein wenig an meine bedürfnisse angepasst.
Leider startet die Userform nicht komplett über den Bildschirm, d.h. es ist noch ein kleiner
spalt zwischen richtigen Excel file und der Useroform wenn man mit der Maustaste daraufklickt
kann man die Userform sogar wegziehen, das möchte ich aber bitte verhindern.
Hast du vielleicht einen Tipp für mich, wie ich das anstellen kann.
https://www.herber.de/bbs/user/86873.xlsm

Anzeige
AW: Counter als Userform beim starten
16.08.2013 13:59:45
mikey
hallo
danke für das beispiel, leider kann ich es nicht starten es kommt sofort die fehlermeldung
Laufzeitfehler 104
Die Methode "On Time" für das Objekt _ Application ist fehlgeschlagen.
Wenn ich nun auf depuggen klicke wird mir in dieser Arbeitsmappe die Userform1.show gelb hinterlegt.
lg

AW: Counter als Userform beim starten
17.08.2013 17:08:55
Matze
Hi mikey,
teste dies nun einmal, bei mir läuft das unter 2010.
Ich bin kein VBA Profi, da gibt es bestimmt was zu verbessern,
https://www.herber.de/bbs/user/86895.xlsm
Matze
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige