Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
260to264
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
260to264
260to264
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Userform nach gewisser Zeit automatisch schließen

Userform nach gewisser Zeit automatisch schließen
22.05.2003 15:32:34
LarsLarsen
Guten Tag,

ich lasse mir eine Userform modeless anzeigen. Ist es irgendwie
möglich, per API oder so, nach Ablauf von 5 Minuten die Userform einfach verschwinden zu lassen?

Dabei liegt mir aber am Herzen, dass der Anwender während dieser 5 Minuten uneingeschränkt mit Excel arbeiten kann.
Wenn irgendeine Aktion auf der Userform durchgeführt wurde soll die innere "Abschaltuhr" wieder bei 5 Minuten beginnen.

Wär echt schön wenn das ginge

Danke schonmal

LarsLarsen

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Userform nach gewisser Zeit automatisch schließen
22.05.2003 15:44:58
Mike E.

Hallo Lars,

in der "Recherche" dieses Forums findest du unter "OnTime" einige hilfreiche Beispiele.

Viele Grüße
Mike

Re: Userform nach gewisser Zeit automatisch schließen
22.05.2003 15:46:46
Nepumuk

Hallo Lars,
in das Klassenmodul "DieseArbeitsmappe":

Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.OnTime verzoegerung, "Ende", , False
End Sub

in das Klassenmodul der Userform:

Private Sub UserForm_Activate()
verzoegerung = Time + TimeSerial(0, 0, 20)
Application.OnTime verzoegerung, "Ende"
End Sub

Private Sub UserForm_Click()
Application.OnTime verzoegerung, "Ende", , False
verzoegerung = Time + TimeSerial(0, 0, 20)
Application.OnTime verzoegerung, "Ende"
Beep
End Sub

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

in ein "normales" Modul:

Public verzoegerung As Date

Public Sub Ende()
Unload UserForm1
End Sub

da du nicht schreibst, welche Steuerelemente in der Userform sind und was eventuell damit für Aktionen verbunden sind, musst du dir den Rest selbst entwickeln.
Gruß
Nepumuk

Anzeige
Re: Userform nach gewisser Zeit automatisch schließen
22.05.2003 15:48:11
Nepumuk

Hallo Lars,
die Zeit zum abschalten musst du noch korrigieren:
verzoegerung = Time + TimeSerial(0, 5, 0)
Gruß
Nepumuk

Re: Userform nach gewisser Zeit automatisch schließen
22.05.2003 15:58:10
Thomas Risi

Hallo

Und hier noch meine Version mit dem TimerControl (s. meine Webseite) ...

Timer auf 'UserForm ziehen', Intervall auf 1 Sekunde einstellen und diesen Code einfügen.



Option Explicit

Dim n&

Private Sub TextBox1_Enter()
    
    ' Beispielaktion ...
    '
    ResetTimer
    
End Sub

Private Sub TimerControl1_OnTime()
    
    ' Nach einer Minute wird die UF beendet
    '
    If n = 60 Then
        Unload Me
    Else
        n = n + 1
        Me.Caption = n
    End If
    
End Sub

Private Sub UserForm_Activate()
    TimerControl1.Start
End Sub

Private Sub ResetTimer()
    n = 0
End Sub



     Code eingefügt mit Syntaxhighlighter 2.1

Gruß
Thomas

Risi Thomas Softwareentwicklung



Anzeige
Re: Userform nach gewisser Zeit automatisch schließen
22.05.2003 16:00:55
LarsLarsen

Vielen Dank!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige