Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Rechner zu einem vorgegebenen Zeitpunkt ausschalten

Gruppe

OnTime

Problem

Wie kann ich zu einem bestimmten Zeitpunkt alle Programme beenden und den Rechner ausschaltern lassen?

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.

StandardModule: Modul1

Declare Function ExitWindowsEx& Lib "user32" _
   (ByVal uFlags&, ByVal wReserved&)

Global Const EWX_FORCE = 8
Global Const EWX_LOGOFF = 0
Global Const EWX_REBOOT = 2
Global Const EWX_SHUTDOWN = 1

Sub TschuessEinleiten()
   Dim varTschuess As Variant
   varTschuess = InputBox("Wann soll der Rechner ausgeschaltet werden?", , _
      Format(Now + TimeSerial(0, 1, 0), "hh:mm:ss"))
   If varTschuess = "" Then Exit Sub
   Application.OnTime TimeValue(varTschuess), "Tschuess"
End Sub

Sub Tschuess()
  Dim LResult
  LResult = ExitWindowsEx(EWX_SHUTDOWN, 0&)
End Sub