Microsoft Excel

Herbers Excel/VBA-Archiv

Application.OnTime

Betrifft: Application.OnTime von: Franc
Geschrieben am: 28.08.2004 16:19:09

hi,

Ich habe eine Tabelle erstellt.
Wenn ein Nutzer einen bestimmten Button anklickt, hat er 10 Minuten Zeit einen anderen Button zu drücken ansonsten kommt nach 10 Minuten eine Erinnerung.

Application.OnTime Time + TimeSerial(0, 10, 0), "bild"

Bei mir kommt das aber andauernd auch wenn ich vorher den Button gedrückt hatte.
Gibt es eine Möglichkeitkeit obengeschriebene Anweisung zu deaktivieren??

Ich hab schon probiert das bei dem anderen Makro die Anweisung

Application.OnTime Time + TimeSerial(0, 10, 0), "bild", False

enthalten ist aber das ändert nichts.

Hat das vielleicht damit zu tun das ich die Variable Time verwende??
Diese Variable kann ich aber durch keine feste Zeit ersetzen, weil sie davon abhängt, wann der Nutzer den ersten Button betätigt.

Wenn ihr eine Lösung wisst warum das immer wieder auftaucht dann wäre ich euch dankbar.

  


Betrifft: Vielleicht Now() für die Zeit verwenden? o.T. von: jinx
Geschrieben am: 28.08.2004 16:26:22




  


Betrifft: Application.OnTime Now + TimeSerial....oT von: AndréL.
Geschrieben am: 28.08.2004 16:45:44

.


  


Betrifft: AW: Application.OnTime von: mealone
Geschrieben am: 28.08.2004 16:49:53

hallo franc,

time verwendet die aktuelle systemzeit
also besser

varZeit1 = Time
Application.OnTime varZeit1 + TimeSerial(0, 10, 0), "bild"

gruss mealone


  


Betrifft: AW: Application.OnTime von: Franc
Geschrieben am: 28.08.2004 17:31:34

thx,

das scheint zu funktionieren.


  


Betrifft: AW: Application.OnTime von: Franc
Geschrieben am: 30.08.2004 20:51:56

Das Problem ist gefunden ich weiss nur nicht wie ich es beheben soll.

Wenn ich

Application.OnTime Time + TimeSerial(0, 10, 0), "bild",

Schreibe öffnet er bei jedem Start ein neues Timefenster. (deswegen hatte ich dann auch soviel Meldungen)

Wenn ich

Application.OnTime Time + TimeSerial(0, 10, 0), "bild", False

schreibe dann schließt er das alte und nimmt daher immer nur 1.

Jetzt gibbet es aber ein Problem.

Starte ich zuerst
Application.OnTime Time + TimeSerial(0, 10, 0), "bild",
und dann
Application.OnTime Time + TimeSerial(0, 10, 0), "bild", False

ist alles i.O.

aber wenn ich jetzt wieder
Application.OnTime Time + TimeSerial(0, 10, 0), "bild", False
starte dann gibts natürlich eine Fehlermeldung.

Gibt es eine Option womit ich prüfen kann, ob bereits Application.OnTime gestartet wurde?


  


Betrifft: AW: Application.OnTime von: mealone
Geschrieben am: 30.08.2004 21:55:34

hallo franc,

damit schickst du jede fehlermeldung in die wüste


On Error Resume Next
Application.OnTime Time + TimeSerial(0, 10, 0), "bild", False

cu mealone