Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1236to1240
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Commandbotton zeitlich freigeben

Commandbotton zeitlich freigeben
Thomas
Ich brauche bitte Eure Hilfe!
Folgendes Problem:
Ich habe zwei Befehlsschaltflächen.
Sagen wir Button1 und Button2
Button1 soll immer von 8 Uhr bis 9 Uhr aktiv und grün sein.
Ist die Zeit überschritten, so soll der Button sich deaktivieren und und Farbe
soll sich auf rot ändern.
Button2 soll sich dann von 9 bis 10 Uhr aktivieren. Danach das Gleiche wie
Button1.
Vermutlich verwendet man hier die Application OnTime Methode?
Wer kann mir hier weiterhelfen.
Vielen Dank
Thomas

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Commandbotton zeitlich freigeben
28.11.2011 21:17:46
Josef

Hallo Thomas,
den Tabellennamen und den Namen der Buttons ggf. anpassen!
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  Call StopTimer
End Sub


Private Sub Workbook_Open()
  Call setButtonStatus
End Sub


' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public dblNextTime As Double
Public Const clngIntervall = 60 ' Intervall in Sekunden
Public Const cstrProc = "setButtonStatus"

Sub StartTimer()
  dblNextTime = Now + TimeSerial(0, 0, clngIntervall)
  Application.OnTime earliesttime:=dblNextTime, procedure:=cstrProc, _
    schedule:=True
End Sub


Sub setButtonStatus()
  
  With Sheets("Tabelle1")
    With .CommandButton1
      If Hour(Now) = 8 Then
        .BackColor = RGB(0, 255, 0)
        .Enabled = True
      Else
        .BackColor = RGB(255, 0, 0)
        .Enabled = False
      End If
    End With
    With .CommandButton2
      If Hour(Now) = 9 Then
        .BackColor = RGB(0, 255, 0)
        .Enabled = True
      Else
        .BackColor = RGB(255, 0, 0)
        .Enabled = False
      End If
    End With
  End With
  
  StartTimer
  
End Sub


Sub StopTimer()
  On Error Resume Next
  Application.OnTime earliesttime:=dblNextTime, _
    procedure:=cstrProc, schedule:=False
End Sub



« Gruß Sepp »

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige