wie war das gleich noch mal.. irgendwas mit after.timevalue oder so.. ^^
ich möchte, dass wenn die datei 5 sekunden auf ist, eine msgbox erscheint.
wie mach ich das?
MfG
Markus
Private Sub Workbook_Open()
Application.OnTime Now + TimeSerial(0, 0, 5), "Msg"
End Sub
Um eine MsgBox nach einer bestimmten Zeit anzuzeigen, kannst Du VBA in Excel verwenden. Hier sind die Schritte, die Du befolgen musst:
Öffne den Visual Basic for Applications (VBA) Editor:
ALT
+ F11
, um den VBA-Editor zu öffnen.Wähle die richtige Arbeitsmappe aus:
DieseArbeitsmappe
.Füge den folgenden Code in das Modul ein:
Private Sub Workbook_Open()
Application.OnTime Now + TimeSerial(0, 0, 5), "Msg"
End Sub
Erstelle ein allgemeines Modul:
Einfügen
> Modul
.Füge den Code für die MsgBox in das Modul ein:
Sub Msg()
MsgBox "Hallo"
End Sub
Speichere die Änderungen und schließe den VBA-Editor.
Teste die Funktion: Schließe die Arbeitsmappe und öffne sie erneut. Nach 5 Sekunden sollte die MsgBox erscheinen.
Fehler: MsgBox erscheint nicht
Fehler: VBA wird nicht ausgeführt
Datei
> Optionen
> Sicherheit
> Makro-Einstellungen
überprüfen.Wenn Du eine andere Methode zur Anzeige einer MsgBox nach einer bestimmten Zeit verwenden möchtest, kannst Du auch den Application.Wait
Befehl nutzen. Hier ist ein Beispiel:
Sub WaitAndMsg()
Application.Wait (Now + TimeValue("00:00:05"))
MsgBox "Hallo"
End Sub
Diese Methode ist einfacher, benötigt aber, dass Du die Ausführung der Excel-Anwendung während der Wartezeit pausierst.
Hier ist ein weiteres Beispiel, um eine benutzerdefinierte Meldung anzuzeigen:
Sub CustomMsg()
Application.OnTime Now + TimeSerial(0, 0, 10), "ShowCustomMessage"
End Sub
Sub ShowCustomMessage()
MsgBox "Dies ist eine benutzerdefinierte Meldung nach 10 Sekunden!"
End Sub
In diesem Fall wird die MsgBox nach 10 Sekunden angezeigt.
Application.OnTime
nur, wenn Du sicherstellen kannst, dass die Excel-Anwendung nicht während der Wartezeit geschlossen wird, da dies zu Fehlern führen kann.1. Wie lange kann ich die Zeit für die MsgBox einstellen?
Du kannst die Zeit auf bis zu 24 Stunden einstellen, indem Du TimeSerial
entsprechend anpasst. Zum Beispiel TimeSerial(1, 30, 0)
für 1 Stunde und 30 Minuten.
2. Was passiert, wenn ich die MsgBox nicht schließe?
Die Excel-Anwendung bleibt im Wartezustand, bis die MsgBox geschlossen wird. Das bedeutet, dass Du währenddessen keine anderen Aktionen durchführen kannst.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen