Access-Formulare: Stylische Checkboxen und Toggle Buttons!

Wir alle kennen es: Die Standard-Steuerelemente in Microsoft Access sind nicht besonders schick. Hier vor allem die Checkbox. Manchmal werfen wir sehnsüchtige Blicke auf moderne Webanwendungen, wo alles smooth, interaktiv und stylisch daherkommt.

Aber hey – was, wenn ich euch sage, dass Access mehr kann, als es auf den ersten Blick scheint?

👉 Mit ein bisschen Code, Vorstellungskraft und cleverem Einsatz vorhandener Funktionen kann man selbst aus einem alten Access-Formular etwas richtig Cooles zaubern!

In diesem Artikel zeige ich euch zwei einfache Möglichkeiten, wie ihr z. B. eine langweilige Checkbox oder einen ToggleButton durch einen CommandButton ersetzt – mit richtigem Icon, Hover-Effekt und ganz viel Interaktivität!

Warum ein CommandButton?

Beliebige Icons (auch dynamisch zur Laufzeit)

Größenanpassung – vom Mini bis zum Mega-Button

Hover-Funktionen und visuelles Feedback

Mehr Interaktion und ein moderner Look

Freie Gestaltung für Zustände wie ON/OFF, LOCK/UNLOCK, SHOW/HIDE etc.

Im Gegensatz dazu ist eine Checkbox... nun ja, recht beschränkt: klein, grau, eckig – und irgendwie leblos 😅

🧪 Beispiel 1: Checkbox 

Was brauchst du?

  • Ein passendes Icon (aus der versteckten Tabelle MSysResources)
  • Einen zusätzlichen CommandButton, der die Checkbox steuert
  • Und ein paar Zeilen VBA

 

🧠 Die Idee: Der Button klickt → Wert der Checkbox wird umgeschaltet → Das Bild wird geändert 

Alles in einer Sub in der Form!

Private Sub cmdShow_Click()

    ' toggle the value (True/False)    Me.chkShow.value = Not Me.chkShow.value

    ' change the icon (thanks to Alessandro Grimaldi)            
Me.cmdShow.Picture = IIf(Me.chkShow, "show_ON", "show_OFF") 

End Sub


🧪 Beispiel 2: Toggle mit mehreren Zuständen

Zeigt als Beispiel alle Icons in der MSysResources. Hier wird eine funktion verwendet. Man könnte auch eine Switch Expresion verwenden.

🔁 Mit einer Textbox als Statusspeicher und einem CommandButton kannst du beliebige Zustände durchschalten:

z. B. 1 → 2 → 3 → ...→ 16 →  zurück zu 1.


Private Sub cmdIcons_Click()

    tboIcons = (Nz(tboIcons) Mod 16) + 1

 ' we could use as well a switch expresion here instead the following function

 SetMyControlImage_ICONS Me, Me.cmdIcons, Me.tboIcons.value

End Sub

 

Public Sub SetMyControlImage_ICONS(frm As Form, ctr As Control, ctrValue As Integer)

    Select Case ctrValue
      Case Is = 1:    frm.Controls(ctr.Name).Picture = "switch_ON"        
      Case Is = 2:    frm.Controls(ctr.Name).Picture = "switch_OFF"        
      Case Is = 3:    frm.Controls(ctr.Name).Picture = "check_ON"        
      Case Is = 4:    frm.Controls(ctr.Name).Picture = "check_OFF"        
      Case Is = 5:    frm.Controls(ctr.Name).Picture = "lock_ON"        
      Case Is = 6:    frm.Controls(ctr.Name).Picture = "lock_OFF"        
      Case Is = 7:    frm.Controls(ctr.Name).Picture = "show_ON"        
      Case Is = 8:    frm.Controls(ctr.Name).Picture = "show_OFF"        
      Case Is = 9:    frm.Controls(ctr.Name).Picture = "no1"        
      Case Is = 10:   frm.Controls(ctr.Name).Picture = "no2"        
      Case Is = 11:   frm.Controls(ctr.Name).Picture = "no3"        
      Case Is = 12:   frm.Controls(ctr.Name).Picture = "no4"        
      Case Is = 13:   frm.Controls(ctr.Name).Picture = "facebook"        
      Case Is = 14:   frm.Controls(ctr.Name).Picture = "linkedin"        
      Case Is = 15:   frm.Controls(ctr.Name).Picture = "pinterest"        
      Case Is = 16:   frm.Controls(ctr.Name).Picture = "youtube"
    End Select

End Sub



🚀 Fazit

Mit minimalem Aufwand kannst du deine Access-Formulare nicht nur funktional erweitern, sondern auch optisch und interaktiv modernisieren.

So wird Access plötzlich wieder spannend, lebendig und vor allem benutzerfreundlich 💥

 

👉 Danke an Alessandro Grimaldi er hat mir den Hinweis gegeben die IIf Expression zu verwenden. Zudem einen einfachen Weg um Nummern zu "toggeln".

In dem Download zeige ich verschiedene Techniken um das Icon zu ändern. Direkt in dem Formular oder als eigene und wiederverwendbare Funktion. Auch ich der Funktion zeige ich verschiedene Möglichkeiten. Je nach Bedarf und eigener Vorliebe.

🔥 Und jetzt seid ihr dran!

Lasst uns gemeinsam ACCESS auf das nächste Level bringen.
Denn eins ist klar: Standard war gestern. Heute, wird ACCESS sexy. 🔥


💬 Hast du Fragen, Ideen, Verbesserungen oder willst deine Version zeigen? Kommentiere gern!
 


Mit dieser kleinen Erweiterung wird euer Access-Interface nicht nur intuitiver, sondern auch ein ganzes Stück „sexier“.

Die ausführliche Beschreibung und alle Hinweise findet ihr direkt im Code – wie gewohnt gut dokumentiert.


    DOWNLOAD   

Version: 1.2


Wenn du es hilfreich findest und seinen Wert anerkennst, würde ich mich über eine kleine Spende freuen, die den Aufwand und den Nutzen widerspiegelt, den es dir bietet. PayPal Eine kleine Spende