Thema Datum  Von Nutzer Rating
Antwort
Rot viele Toggle Buttons über Array
17.07.2023 16:48:54 Max64
Solved
17.07.2023 20:26:37 Gast3233
NotSolved
18.07.2023 09:24:15 Max64
NotSolved
17.07.2023 20:42:03 Gast7777
***
NotSolved
17.07.2023 21:50:00 Max64
NotSolved
17.07.2023 22:02:57 Gast7777
NotSolved
18.07.2023 10:18:33 Gast89977
NotSolved
18.07.2023 16:16:42 Max64
NotSolved
17.07.2023 20:42:41 xlKing
****
NotSolved
17.07.2023 21:23:57 Max64
NotSolved
18.07.2023 09:33:32 Max64
NotSolved
18.07.2023 16:16:15 Max64
NotSolved

Ansicht des Beitrags:
Von:
Max64
Datum:
17.07.2023 16:48:54
Views:
1199
Rating: Antwort:
 Nein
Thema:
viele Toggle Buttons über Array

Hallo,

ich bin erst seit ca. 10 Tagen mit Excel VBA unterwegs.
In einer UserForm möchte ich viele Toggle- Buttons unterbringen.
Diese sollen im Zusammenspiel mit einem 2-dimensionalen Array eine veränderbare (ja/nein) Matrix abbilden.

Ein paar Zeilen habe ich schon geschrieben, befürchte aber dass ich irgendwann mal in einer Sackgasse lande.

Zunächst liegen vier Bilder auf einer Userform und sollen zur Laufzeit auf den jeweiligen Button angezeigt werden
(für die Zustände "true", "false" jeweils immer mit oder ohne Fokus auf den Toggle- Button selbst).
Das funktioniert nun mal schon etwas - aber der Code ist bei 16 Buttons schon recht lang und unübersichtlich.

'-------------------------------------------------------

Private Sub ist_zustand_herstellen()

Dim a As Byte
        For a = 1 To 16
          If Me("ToggleButton" & a).Value = False Then
             Me("ToggleButton" & a).Picture = Image1.Picture
          Else
             Me("ToggleButton" & a).Picture = Image3.Picture
          End If
        Next a
End Sub


Private Sub Frame1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Call ist_zustand_herstellen
End Sub

'-------------------------------------------------------

'stellvertretend für alle (sehr viele) Toggletasten (im Moment zum Test 16):

Private Sub ToggleButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)

Call ist_zustand_herstellen

    If ToggleButton1.Value = False Then
       ToggleButton1.Picture = Image2.Picture
    Else
       ToggleButton1.Picture = Image4.Picture
    End If
End Sub

Private Sub ToggleButton1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If ToggleButton1.Value = False Then
        ToggleButton1.Picture = Image3.Picture
    Else
        ToggleButton1.Picture = Image1.Picture
    End If
End Sub

Private Sub ToggleButton1_Change()
    If ToggleButton1.Value = False Then
        ToggleButton1.Picture = Image1.Picture
    Else
        ToggleButton1.Picture = Image3.Picture
    End If
End Sub

'-------------------------------------------------------

Die Anzahl der Buttons soll ein vielfaches von 64 werden.
Sollte ich einen anderen Weg einschlagen?

Danke für jeden Tipp.


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • 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
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • 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

Thema Datum  Von Nutzer Rating
Antwort
Rot viele Toggle Buttons über Array
17.07.2023 16:48:54 Max64
Solved
17.07.2023 20:26:37 Gast3233
NotSolved
18.07.2023 09:24:15 Max64
NotSolved
17.07.2023 20:42:03 Gast7777
***
NotSolved
17.07.2023 21:50:00 Max64
NotSolved
17.07.2023 22:02:57 Gast7777
NotSolved
18.07.2023 10:18:33 Gast89977
NotSolved
18.07.2023 16:16:42 Max64
NotSolved
17.07.2023 20:42:41 xlKing
****
NotSolved
17.07.2023 21:23:57 Max64
NotSolved
18.07.2023 09:33:32 Max64
NotSolved
18.07.2023 16:16:15 Max64
NotSolved