Moin. Ich bin Sönke Schäfer, der Datenschäfer. Und heute geht’s um ein Thema, das Entwickler in Access & Co. oft nervt: Icons/“>Icons. Genauer gesagt: Wie bekommst Du Moderne Icons wie PNG oder SVG in Deine Formulare – ohne Bastellösungen und mit sauberem VBA.
Access ist alt. Aber mit ein paar Tricks kannst Du auch dort moderne Bilder einbinden. Ich zeig Dir, wie.
SVG in Access? Leider nein.
Klartext: Access kann kein SVG. Zumindest nicht direkt. SVG ist ein Vektorformat – Access kennt nur Bitmaps, JPEG, GIF und PNG.
Wenn Du SVGs hast, musst Du sie vorher konvertieren – am besten in PNG. Tools dafür gibt’s genug. Zum Beispiel:
- Inkscape (kostenlos)
- Online-Konverter wie cloudconvert.com
PNG einbinden – drei Möglichkeiten
Du hast jetzt ein PNG? Gut. Dann hast Du drei Wege, es in ein Formular zu bringen.
1. Bildsteuerfeld mit Pfad zur Datei
Einfachstes Setup:
Me!imgIcon.Picture = "C:\Pfad\zum\Icon.png"
Wichtig: Das Steuerelement imgIcon muss ein Bildfeld sein (Steuerelementtyp „Bild“).
Das funktioniert gut für statische Icons – aber nur, wenn der Pfad erreichbar ist.
2. Bild aus eingebettetem OLE-Feld
Du kannst das Bild auch in eine Tabelle laden – z. B. mit einem OLE-Feld. Dann lädst Du es zur Laufzeit ins Formular.
Das ist umständlich. Und oft instabil. Ich empfehle es nicht mehr. Lieber: Bilder in Ordner legen und mit Pfadangabe arbeiten.
3. Bild als eingebettete Ressource (gepackt als Bytearray)
Wenn Du das Bild direkt in VBA einbinden willst (z. B. ohne Dateipfad), kannst Du es als Bytearray laden.
Das geht über die Windows-API. Aber ehrlich: Für Access-Formulare ist das Overkill. Es lohnt sich eher für Ribbon-Icons oder spezielle Anwendungen.
Icons dynamisch ändern – z. B. per Button-Klick
Willst Du je nach Zustand ein anderes Icon anzeigen? Kein Problem:
Private Sub cmdWechsel_Click() If Me!imgIcon.Picture = "C:\Icons\info.png" Then Me!imgIcon.Picture = "C:\Icons\warnung.png" Else Me!imgIcon.Picture = "C:\Icons\info.png" End IfEnd Sub
Du kannst damit z. B. Schaltflächen oder Statusfelder visuell steuern.
Transparente Icons? Ja, aber nur PNG
GIF kann’s auch – aber PNG ist besser. Transparenz funktioniert sauber, solange Du nicht versuchst, das Bild zu skalieren oder im Steuerelement zu quetschen.
Tipp:
Me!imgIcon.SizeMode = 1 ' Zoom
Das sorgt dafür, dass das Bild proportional skaliert wird.
Ribbon mit Icons? Extra-Kapitel.
Wenn Du Icons im Access-Ribbon setzen willst, brauchst Du XML und ImageMso oder Base64-kodierte Bilder.
Das machen wir ein andermal. Heute bleiben wir bei Formularen.
Fazit vom Datenschäfer
Access lebt. Und mit modernen Icons sieht’s nicht nur besser aus – es hilft auch der Usability. Mit ein bisschen Disziplin beim Pfadmanagement und konsistenten Bildgrößen kannst Du viel rausholen. SVG geht leider nicht direkt – aber PNG reicht oft. Wenn Du willst, zeig ich Dir, wie Du das Ganze in ein zentrales Icon-Management einbaust.
Datenschäfer: Analyse, Auswertung und Automatisierung für KMU im Norden 🐑

