onderstand functie gebruik ik hiervoor.
Private Sub CommandButton1_Click()
CommandButton1.Caption = "Maandag"
run "Module2.maandag"
End Sub
Dat zou met onderstaande code kunnen:
Sub KnopKleur(strName As String)
Dim cmd As OLEObject
For Each cmd In ActiveSheet.OLEObjects
If TypeOf cmd.Object Is CommandButton Then
If cmd.Name = strName Then
cmd.Object.BackColor = 255
Else
cmd.Object.BackColor = &H8000000F
End If
End If
Next
End Sub
die kun je bij elke knop aanroepen, bijvoorbleed voor knop CommandButton1
alsvolgt:
Private Sub CommandButton1_Click()
KnopKleur "CommandButton1"
End Sub
Alle knoppen krijgen de standaard kleur, behalve de knop waarop is geklikt,
die wordt rood.
Jan
Private Sub Maandag_Click()
Maandag.Caption = "Maandag"
run "Module2.maandag"
End Sub
"jan" schreef:
> .
>
Deze procedure
Sub KnopKleur(strName As String)
Dim cmd As OLEObject
For Each cmd In ActiveSheet.OLEObjects
If TypeOf cmd.Object Is CommandButton Then
If cmd.Name = strName Then
cmd.Object.BackColor = 255
Else
cmd.Object.BackColor = &H8000000F
End If
End If
Next
End Sub
zet je in een algemene module (bv jouw Module2)
Onder de Click-procedure van elke knop zet je een verwijzing naar
bovenstaande procedure, bv voor de knop Maandag:
Private Sub Maandag_Click()
Maandag.Caption = "Maandag"
run "Module2.maandag"
KnopKleur "Maandag"
End Sub
waarbij "Maandag" immers de naam van deze knop is.
Jan
"jan" schreef:
> .
>