Das in ein ALLGEMEINES Modul:
Public ok As Boolean
Public old As Object, a
DAS ins Modul der Userform:
Option Explicit
Private Sub UserForm_Initialize()
For a = 1 To 16 'ggf erhöhen
Me("ToggleButton" & a).Tag = a
Next a
End Sub
Private Sub ToggleButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
a = CInt(ToggleButton1.Tag) ' Den Code unverändert für ALLE Togglebuttons übernehmen
Call MM(a)
End Sub
Private Sub ToggleButton1_Click()
a = CInt(ToggleButton1.Tag) ' Den Code unverändert für ALLE Togglebuttons übernehmen
Call CL(a)
End Sub
Public Sub MM(a)
Dim old
Set old = Me("ToggleButton" & a).Picture
Me("ToggleButton" & a).Picture = Image2.Picture
If Me("ToggleButton" & a).Value Then Me("ToggleButton" & a).Picture = Image4.Picture
ok = False
End Sub
Public Sub CL(a)
Me("ToggleButton" & a).Picture = Image4.Picture
If Me("ToggleButton" & a).Value Then Me("ToggleButton" & a).Picture = Image2.Picture
ok = False
End Sub
Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If ok Then Exit Sub
If Not old Is Nothing Then Me("ToggleButton" & a).Picture = old
For a = 1 To 16 'ggf erhöhen
Me("ToggleButton" & a).Picture = Image1.Picture
If Me("ToggleButton" & a).Value Then Me("ToggleButton" & a).Picture = Image3.Picture
Next a
ok = True
End Sub
|