Thema Datum  Von Nutzer Rating
Antwort
Rot CommandButton automatisch zurücksetzten! timer?
12.03.2019 08:40:59 Simon
NotSolved
12.03.2019 16:04:48 Holger
NotSolved

Ansicht des Beitrags:
Von:
Simon
Datum:
12.03.2019 08:40:59
Views:
71
Rating: Antwort:
  Ja
Thema:
CommandButton automatisch zurücksetzten! timer?

Hallo zusammen,

 

ich programmiere mit gerade eine UserForm die ein Bedienschema eines Gerätes nachbildet, im Grunde funktioniert das alles so wie es soll bis auf den automatischen Rücksprung aus einem Zustand.

Ich drücke einen button und es werden gewisse Tasten hervorgehoben und andere ausgegraut, diesen Zustand soll durch abermaliges drücken des buttons wieder verlassen werde können oder eben nach Zeit X. Das mit der Zeit bekomme ich nicht hin mangels Kompetenz. wenn ich eine Wartezeit einprogrammiere kann man die anderen buttons nicht verwenden

Es handelt sich um den Commandbutton "Button_Farbtemperatur_Click()"

sicherlich alles andere als schön programmiert da ich fachfremd bin

hier mal der code der user form


Dim Helligkeit_Wert As Integer
Dim Helligkeit_AnAus As Integer
Dim Farbtemperatur_Wert As Integer
Dim Farbtemperatur_AnAus As Integer

Dim cnt1 As Integer
Dim cnt As Integer

Private Sub UserForm_Initialize()

Button_Farbtemperatur.Enabled = False
Button_Helligkeit.Enabled = False
Button_Farbtemperatur.Enabled = False
Button_Zahnfarbe.Enabled = False
Button_Compo_Save.Enabled = False
Button_SpeicherUser.Enabled = False
Button_subtracton.Enabled = False
button_addition.Enabled = False

cnt = 1

Helligkeit_AnAus = 0
Farbtemperatur_AnAus = 0

Alle_Sonnen_ausblenden

End Sub

Private Sub Button_AnAus_Click()

Helligkeit_Wert = Range("D2").Value  'Wert für Helligkeit aus Speicher lesen
Farbtemperatur_Wert = Range("D1").Value  'Wert für Farbtemperatur aus Speicher lesen

Select Case cnt:
Case 1
Button_AnAus.BackColor = &H8080FF
cnt = 0


Button_Helligkeit.Enabled = True
Button_Farbtemperatur.Enabled = True
Button_Zahnfarbe.Enabled = True
Button_Compo_Save.Enabled = True
Button_SpeicherUser.Enabled = True
Button_AnAus.Enabled = True
Button_subtracton.Enabled = True
button_addition.Enabled = True
richtige_Sonne_einblenden

Sheets("Tabelle1").Range("A1").Value = cnt 'speichert den Wert in Tabelle1 unter A1 ab

Case 0
Button_AnAus.BackColor = &H8000000F
cnt = 1


Button_Helligkeit.BackColor = &H8000000F
Button_Farbtemperatur.BackColor = &H8000000F
Helligkeit_AnAus = 0
Farbtemperatur_AnAus = 0

Anzeigebalken_1.BackColor = &H8000000F  'Led Balkenanzeige nullen
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Button_Helligkeit.Enabled = False
Button_Farbtemperatur.Enabled = False
Button_Zahnfarbe.Enabled = False
Button_Compo_Save.Enabled = False
Button_SpeicherUser.Enabled = False
Button_subtracton.Enabled = False
button_addition.Enabled = False
Alle_Sonnen_ausblenden

Sheets("Tabelle1").Range("A1").Value = cnt
End Select



End Sub

Private Sub Button_SpeicherUser_Click()


Helligkeit_Wert = Range("C5").Value  'Wert für Helligkeit aus Speicher lesen
Farbtemperatur_Wert = Range("B5").Value  'Wert für Farbtemperatur aus Speicher lesen
richtige_Sonne_einblenden


End Sub

Private Sub Button_SpeicherUser_DblClick(ByVal Cancel As MSForms.ReturnBoolean)

Helligkeit_Wert = Range("D2").Value
Farbtemperatur_Wert = Range("D1").Value
Sheets("Tabelle1").Range("C5").Value = Helligkeit_Wert 'speichert den Wert in Tabelle1 unter C5 ab
Sheets("Tabelle1").Range("B5").Value = Farbtemperatur_Wert 'speichert den Wert in Tabelle1 unter B5 ab


End Sub




Private Sub Button_Helligkeit_Click()

Select Case Helligkeit_AnAus:

Case 1  'Ausschalten
Button_Helligkeit.BackColor = &H8000000F
Helligkeit_AnAus = 0


Button_Farbtemperatur.Enabled = True
Button_Zahnfarbe.Enabled = True
Button_Compo_Save.Enabled = True
Button_SpeicherUser.Enabled = True
Button_AnAus.Enabled = True

Anzeigebalken_1.BackColor = &H8000000F  'Led Balkenanzeige nullen
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F


Sheets("Tabelle1").Range("B2").Value = Helligkeit_AnAus 'speichert den Wert in Tabelle1 unter A1 ab

Case 0  ' Einschalten
Button_Helligkeit.BackColor = &H8080FF
Helligkeit_AnAus = 1

Button_Farbtemperatur.Enabled = False  'Andere Schaltflächen sperren/ausgrauen
Button_Zahnfarbe.Enabled = False
Button_Compo_Save.Enabled = False
Button_SpeicherUser.Enabled = False

Helligkeit_Wert = Range("D2").Value  'Wert für Helligkeit aus Speicher lesen

Select Case Helligkeit_Wert:

Case 1
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 2
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 3
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 4
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8000000F

Case 5
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8080FF

End Select



Sheets("Tabelle1").Range("B2").Value = Helligkeit_AnAus

End Select

End Sub
Private Sub Button_Farbtemperatur_Click()

Select Case Farbtemperatur_AnAus:
Case 1
Button_Farbtemperatur.BackColor = &H8000000F
Farbtemperatur_AnAus = 0


Button_Helligkeit.Enabled = True
Button_Zahnfarbe.Enabled = True
Button_Compo_Save.Enabled = True
Button_SpeicherUser.Enabled = True
Button_AnAus.Enabled = True

Anzeigebalken_1.BackColor = &H8000000F  'Led Balkenanzeige nullen
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Sheets("Tabelle1").Range("B1").Value = Farbtemperatur_AnAus 'speichert den Wert in Tabelle1 unter A1 ab

Case 0 'Einschalten

Button_Farbtemperatur.BackColor = &H8080FF

Farbtemperatur_AnAus = 1

Button_Helligkeit.Enabled = False
Button_Zahnfarbe.Enabled = False
Button_Compo_Save.Enabled = False
Button_SpeicherUser.Enabled = False


Farbtemperatur_Wert = Range("D1").Value  'Wert für Farbtemperatur aus Speicher lesen

Select Case Farbtemperatur_Wert:

Case 1
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 2
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 3
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 4
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8000000F

Case 5
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8080FF

End Select



Sheets("Tabelle1").Range("B1").Value = Farbtemperatur_AnAus
End Select


'Application.Wait (Now + TimeValue("00:00:05")) 'wartet 5 Sekunden

End Sub

Private Sub Button_Zahnfarbe_Click()

Helligkeit_Wert = Range("C6").Value  'Wert für Helligkeit aus Speicher lesen
Farbtemperatur_Wert = Range("B6").Value  'Wert für Farbtemperatur aus Speicher lesen
richtige_Sonne_einblenden

End Sub

Private Sub Button_Compo_Save_Click()

Helligkeit_Wert = Range("C7").Value  'Wert für Helligkeit aus Speicher lesen
Farbtemperatur_Wert = Range("B7").Value  'Wert für Farbtemperatur aus Speicher lesen
richtige_Sonne_einblenden


End Sub

Private Sub Button_subtracton_Click()


If Farbtemperatur_AnAus = 0 And Helligkeit_AnAus = 1 Then   'Helligkeit

Helligkeit_Wert = Range("D2").Value                    ' liest den Wert für Helligkeit aus D2 aus

If Helligkeit_Wert > 1 Then
Helligkeit_Wert = Helligkeit_Wert - 1                  ' Wert wird um 1 reduziert
Sheets("Tabelle1").Range("D2").Value = Helligkeit_Wert ' Wert wird in D2 geschrieben
End If

Select Case Helligkeit_Wert:

Case 1
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 2
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 3
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 4
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8000000F

Case 5
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8080FF

End Select

End If




If Farbtemperatur_AnAus = 1 And Helligkeit_AnAus = 0 Then   'Farbtemperatur

Farbtemperatur_Wert = Range("D1").Value                     ' liest den Wert für Farbtemperatur aus D1 aus

If Farbtemperatur_Wert > 1 Then
Farbtemperatur_Wert = Farbtemperatur_Wert - 1               ' Wert wird um 1 reduziert
Sheets("Tabelle1").Range("D1").Value = Farbtemperatur_Wert  ' Wert wird in D1 geschrieben
End If


Select Case Farbtemperatur_Wert:

Case 1
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 2
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 3
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 4
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8000000F

Case 5
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8080FF

End Select

End If

richtige_Sonne_einblenden

End Sub


Private Sub button_addition_Click()
If Farbtemperatur_AnAus = 0 And Helligkeit_AnAus = 1 Then   'Helligkeit

Helligkeit_Wert = Range("D2").Value                    ' liest den Wert für Helligkeit aus D2 aus

If Helligkeit_Wert < 5 Then
Helligkeit_Wert = Helligkeit_Wert + 1                  ' Wert wird um 1 reduziert
Sheets("Tabelle1").Range("D2").Value = Helligkeit_Wert ' Wert wird in D2 geschrieben
End If

Select Case Helligkeit_Wert:

Case 1
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 2
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 3
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 4
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8000000F

Case 5
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8080FF

End Select

End If




If Farbtemperatur_AnAus = 1 And Helligkeit_AnAus = 0 Then   'Farbtemperatur

Farbtemperatur_Wert = Range("D1").Value                     ' liest den Wert für Farbtemperatur aus D1 aus

If Farbtemperatur_Wert < 5 Then
Farbtemperatur_Wert = Farbtemperatur_Wert + 1               ' Wert wird um 1 reduziert
Sheets("Tabelle1").Range("D1").Value = Farbtemperatur_Wert  ' Wert wird in D1 geschrieben
End If


Select Case Farbtemperatur_Wert:

Case 1
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8000000F
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 2
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8000000F
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 3
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8000000F
Anzeigebalken_5.BackColor = &H8000000F

Case 4
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8000000F

Case 5
Anzeigebalken_1.BackColor = &H8080FF
Anzeigebalken_2.BackColor = &H8080FF
Anzeigebalken_3.BackColor = &H8080FF
Anzeigebalken_4.BackColor = &H8080FF
Anzeigebalken_5.BackColor = &H8080FF

End Select

End If

richtige_Sonne_einblenden

End Sub


Function Alle_Sonnen_ausblenden()
    
Bild_1a.Visible = False
Bild_2a.Visible = False
Bild_3a.Visible = False
Bild_4a.Visible = False
Bild_5a.Visible = False

Bild_1b.Visible = False
Bild_2b.Visible = False
Bild_3b.Visible = False
Bild_4b.Visible = False
Bild_5b.Visible = False

Bild_1c.Visible = False
bild_2c.Visible = False
Bild_3c.Visible = False
Bild_4c.Visible = False
Bild_5c.Visible = False

Bild_1d.Visible = False
Bild_2d.Visible = False
Bild_3d.Visible = False
Bild_4d.Visible = False
Bild_5d.Visible = False

Bild_1e.Visible = False
Bild_2e.Visible = False
Bild_3e.Visible = False
Bild_4e.Visible = False
Bild_5e.Visible = False

    
End Function


Function richtige_Sonne_einblenden()

Alle_Sonnen_ausblenden

If Helligkeit_Wert = 1 Then
    If Farbtemperatur_Wert = 1 Then Bild_1a.Visible = True
    If Farbtemperatur_Wert = 2 Then Bild_1b.Visible = True
    If Farbtemperatur_Wert = 3 Then Bild_1c.Visible = True
    If Farbtemperatur_Wert = 4 Then Bild_1d.Visible = True
    If Farbtemperatur_Wert = 5 Then Bild_1e.Visible = True
End If

If Helligkeit_Wert = 2 Then
    If Farbtemperatur_Wert = 1 Then Bild_2a.Visible = True
    If Farbtemperatur_Wert = 2 Then Bild_2b.Visible = True
    If Farbtemperatur_Wert = 3 Then bild_2c.Visible = True
    If Farbtemperatur_Wert = 4 Then Bild_2d.Visible = True
    If Farbtemperatur_Wert = 5 Then Bild_2e.Visible = True
End If

If Helligkeit_Wert = 3 Then
    If Farbtemperatur_Wert = 1 Then Bild_3a.Visible = True
    If Farbtemperatur_Wert = 2 Then Bild_3b.Visible = True
    If Farbtemperatur_Wert = 3 Then Bild_3c.Visible = True
    If Farbtemperatur_Wert = 4 Then Bild_3d.Visible = True
    If Farbtemperatur_Wert = 5 Then Bild_3e.Visible = True
End If

If Helligkeit_Wert = 4 Then
    If Farbtemperatur_Wert = 1 Then Bild_4a.Visible = True
    If Farbtemperatur_Wert = 2 Then Bild_4b.Visible = True
    If Farbtemperatur_Wert = 3 Then Bild_4c.Visible = True
    If Farbtemperatur_Wert = 4 Then Bild_4d.Visible = True
    If Farbtemperatur_Wert = 5 Then Bild_4e.Visible = True
End If

If Helligkeit_Wert = 5 Then
    If Farbtemperatur_Wert = 1 Then Bild_5a.Visible = True
    If Farbtemperatur_Wert = 2 Then Bild_5b.Visible = True
    If Farbtemperatur_Wert = 3 Then Bild_5c.Visible = True
    If Farbtemperatur_Wert = 4 Then Bild_5d.Visible = True
    If Farbtemperatur_Wert = 5 Then Bild_5e.Visible = True
End If

End Function

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst genau und ausführlich
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
  • Bitte markieren Sie Ihre Anfrage als erledigt wenn Ihnen geholfen wurde
Thema: Name: Email:

 
 

Thema Datum  Von Nutzer Rating
Antwort
Rot CommandButton automatisch zurücksetzten! timer?
12.03.2019 08:40:59 Simon
NotSolved
12.03.2019 16:04:48 Holger
NotSolved