Also ich habe mit Timern schon länger nichts mehr gemacht, aber zumindest bis Access2003 ging so etwas nicht (oder zumindest nicht ohne VBA-Programmierung mit Zugriff auf fremde Bibliotheken/Funktionen). Da blieb einem nichts anderes übrig, als das Timer-Ereignis von Formularen zu benutzen, aber das hat zwei Nachteile:
-
Wenn der User das Formular, das man für diese Funktion benutzt, schließt, ist auch der Timer angehalten, der das ganze überwachen/auslösen soll. Damit die gewünschte Aktion ausgeführt wird, muß das Formular wieder geöffnet worden sein.
-
Das Formular muß ununterbrochen eine Schleife durchlaufen lassen, die prüft, ob der gewünschte Zeitpunkt erreicht ist. Das kostet dann halt auch Leistung. Angenommen, an einem Tag soll um 15:00 Uhr was passieren und das soll auf eine Minute genau laufen, sprich spätestens um 15:00 Uhr und 59 Sekunden, dann mußt Du den Timer des Formulars auf 60 Sekunden setzen. Und entsprechend arbeitet Access dann tagelang alle 60 Sekunden die gleiche Prüfung ab, 144 Mal pro Tag.
- wäre egal, wenn eh nur etwas innerhalb eines Formulares gemacht werden soll, denn dann kann man einfach das Timer-Ereignis dieses Formulars benutzen: Schließt jemand das Formular, muß ja auch die Aktion nicht mehr ausgeführt werden, und öffnet es jemand, wird auch wieder geprüft, ob die Aktion auszuführen ist.
Wie Du das ganze steuerst, hängt davon ab, durch was die ganze Sache überhaupt angestoßen werden soll und woher der Zeitpunkt stammt, dessen Erreichen zu überwachen ist.
Jedenfalls mußt Du mit einer Zeile wie
Me.TimerInterval = n
festsetzen, in welchen Zeitabständen geprüft werden soll.
Und mit einer Prozedur
Private Sub Form_Timer()
mußt Du die Überprüfung durchführen.