Registriert seit: 10.04.2026
Version(en): 2007
Hallo allerseits,
ich möchte eine Msgbox alle 15 Minuten anzeigen. Gibt es eine Möglichkeit in VBA. Ich habe application.ontime gefunden. Krieg es aber nicht hin.
Danke für eure Hilfe.
Registriert seit: 12.07.2025
Version(en): 2021
Code:
Sub MyMsgbox()
Dim Answer As VbMsgBoxResult
Answer = MsgBox("Nochmal?", vbYesNo Or vbDefaultButton2, "MyMsgbox")
If Answer = vbYes Then
Application.OnTime Now + TimeSerial(0, 15, 0), "MyMsgbox"
End If
End Sub
Registriert seit: 25.11.2021
Version(en): 2019, 365
11.04.2026, 12:27
(Dieser Beitrag wurde zuletzt bearbeitet: 11.04.2026, 12:27 von Ralf A.)
(10.04.2026, 18:40)Myxin schrieb: Hallo allerseits,
ich möchte eine Msgbox alle 15 Minuten anzeigen. Gibt es eine Möglichkeit in VBA. Ich habe application.ontime gefunden. Krieg es aber nicht hin.
Danke für eure Hilfe.
Da eine MsgBox sich modal verhält, starten die 15 Min. aber immer erst dann, wenn die Msgbox geschlossen wird. Wenn Du 2 Std. mit dem Klick wartest, startet sie halt erst 2 h 15 min. später...
Daran solltest Du denken oder Dir eine Alternative suchen.... beispielsweise einen Timer, der alle 15 Min einen Sound abspielt.
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.
Ciao, Ralf
Registriert seit: 10.04.2026
Version(en): 2007
Danke für den Code.
Ich habe ihn in VBA kopiert unter workbook.Open. Die Minuten habe ich zum Testen auf 1 gestellt. Nach einer Minute kam die Fehlermeldung:
Das Makro 'Mymsgbox' kann nicht ausgeführt werden. Das Makro ist möglicherweise in dieser Arbeitsmappe nicht verfügbar.
Im Trustcenter sind alle Makros aktiviert.
Kannst du mir sagen, wo ich den Fehler gemacht habe?
Danke und viele Grüße
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
12.04.2026, 09:32
(Dieser Beitrag wurde zuletzt bearbeitet: 12.04.2026, 09:33 von RPP63.)
Moin!
Das Makro von Andreas gehört in ein
allgemeines Modul!
(Einfügen, Modul)
Falls Du es automatisch beim Öffnen der Mappe ausführen willst, dann
zusätzlich in DieseArbeitsmappe:
Code:
Private Sub Workbook_Open()
MyMsgbox
End Sub
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 12.07.2025
Version(en): 2021
(11.04.2026, 20:07)Myxin schrieb: Kannst du mir sagen, wo ich den Fehler gemacht habe?
Die Module "DieseArbeitsmappe" und ebenso alle Tabellenblätter sind besondere Module, vom Typ her sind es Klassenmodule und diese gehören zu einem Objekt... okay, das sagt Dir wahrscheinlich im Moment nichts, merk es Dir einfach für die Zukunft.
Man kann auch einen Code in diesen Modulen mit OnTime aufrufen, dann muss man jedoch den Namen des Objektes mit angeben... wir machen es uns einfach und plazieren MyMsgBox in ein reguläres Modul (Menü \ Einfügen \ Modul).
In Workbook_Open rufst Du NICHT MyMsgBox auf so wie Ralf das gesagt hat, weil dann kommt die MsgBox direkt beim Öffnen was Du nicht willst.
Code:
Private Sub Workbook_Open()
Application.OnTime Now + TimeSerial(0, 15, 0), "MyMsgbox"
End Sub
Nun wird MyMsgbox nach 15 Minuten zum ersten Mal aufgerufen und solange Du die Frage MyMsgBox mit Ja beantwortest in 15 Minuten nochmal.
Alles klar?
Andreas.
Registriert seit: 15.08.2017
Version(en): 2016
Hallo
Wozu braucht man sowas?
Mein Rat:
Öffne das Zimmerfenster, dann hörst die Kircheglocke und die schägt ja auch alls 15 Minuten.
Deinn System wird dabei nicht belastet und du kannst ruhig weiter arbeiten.
Gruss Guschti
Der Künstler lebt auch vom Applaus
Registriert seit: 12.07.2025
Version(en): 2021
(12.04.2026, 10:58)Guschti schrieb: Wozu braucht man sowas?
Naja, die üblichen Probleme:
a) Die Datei liegt irgendwo auf einem Netzlaufwerk wird von jemandem geöffnet und dann hängt er in der Datei und alle anderen können nicht arbeiten. Da ist eine freundliche Erinnerung alle 15 Minuten schon mal hilfreich. Es sei denn er sitzt nicht am PC...
b) Ich bin zwar konzentriert beim Arbeiten,vergesse regelmäßig entweder neue Daten von irgendwoher zu kopieren oder irgendwo anders irgendwas aus der Datei zu kopieren.
Ich tippe auf a) und wir werden weitere Fragen in diese Richtung bekommen... klappt am Ende dann eh nicht weil die Makros an dem Rechner von irgendwem nicht aktiviert sind und die MsgBox generell nicht mehr kommt.
Andreas.
Registriert seit: 10.04.2026
Version(en): 2007
Registriert seit: 22.09.2024
Version(en): 2010, 2021
... oder man verwendet einfach die Windows Timer APP und startet eine Fokussitzung.
Dafür braucht man nicht wirklich Excel und VBA.
Knobbi38