
Bild 1: Das etwas unkomfortable Formatierungs-Popup von Rich-Text-Feldern
Wenn Sie Daten im Rich-Text-Format anzeigen, können Sie das kleine Popup-Menü zum Formatieren des aktuell markierten Textes nutzen. Manch einem Nutzer ist das zu fummelig, da das Menü nur eingeblendet wird, wenn Text markiert ist – und manchmal verschwindet es auch einfach wieder. Da professionelle Anwendungen üblicherweise nicht die eingebauten Ribbon-Einträge anzeigen sollen, stehen wir vor einem Dilemma – wie soll der Benutzer die Formatierungen auf komfortable Weise durchführen Das ist kein Problem: Wir fügen einfach ein benutzerdefiniertes Ribbon hinzu, das beim Aktivieren eines Textfeldes mit Rich-Text-Format automatisch aktiviert wird und beim Verlassen wieder verschwindet.
Wenn Sie einen Text im Rich-Text-Feld eines Formulars markieren, erscheint das Popup aus Bild 1 mit den Formatierungsmöglichkeiten. Vorher ist es allerdings nicht zu sehen, sodass unerfahrene Benutzer sich wundern, wie Sie Formatierungen für den Text vornehmen sollen. Außerdem wird das Popup-Menü wieder ausgeblendet, wenn sich die Maus nicht mehr über dem markierten und zu formatierenden Bereich befindet.

Bild 1: Das etwas unkomfortable Formatierungs-Popup von Rich-Text-Feldern
Wir wollen deshalb ein Ribbon hinzufügen, dass nur dann angezeigt wird, wenn der Benutzer das Rich-Text-Feld aktiviert hat. Die Befehle werden dann zunächst deaktiviert angezeigt. Wenn der Benutzer dann Text markiert, werden diese allerdings auch aktiviert.
Ribbon hinzufügen
Um das Ribbon hinzuzufügen, legen Sie eine Tabelle namens USysRibbons an. Diese sieht in der Entwurfsansicht wie in Bild 2 aus. Wenn Sie die Tabelle unter diesem Namen gespeichert haben, werden Sie diese möglicherweise im Navigationsbereich vermissen. Das liegt daran, dass der Name die Tabelle als Systemtabelle auszeichnet.

Bild 2: Entwurf der Ribbon-Tabelle
Um sie zu öffnen, aktivieren Sie die Anzeige von Systemobjekten und versteckten Objekten – Sie können diese aber auch einfach über den folgenden Befehl über das Direktfenster des VBA-Editors öffnen:
DoCmd.OpenTable "USysRibbons"
Danach geben Sie die Ribbon-Definition aus Listing 1 in das Feld RibbonXML ein. Dieses Definition legt fest, dass ein neues Ribbon eingeblendet wird und dass alle eingebauten Elemente ausgeblendet werden. Dazu haben wir das Attribut startFromScratch auf den Wert true eingestellt. Das einzige tab-Element des Ribbons enthält ein Group-Element, das eine eingebaute Ribbon-Gruppe referenziert. Diese heißt GroupTextFormatting.
<xml version="1.0">
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<ribbon startFromScratch="true">
<tabs>
<tab id="tabRichText" label="Formatierung">
<group idMso="GroupTextFormatting"/>
</tab>
</tabs>
</ribbon>
</customUI>
Listing 1: Die Definition des Ribbons
Diese Gruppe entspricht genau den Elementen, die Sie sehen, wenn Sie das Start-Menü von Access aktivieren (siehe Bild 3).

Bild 3: Ribbon-Einträge zum Formatieren des Inhalts von Rich-Text-Feldern
Außerdem schreiben wir in das Feld RibbonName einen geeigneten Namen, in unserem Fall RichText. Diesen Namen benötigen wir gleich noch.
Name einer eingebauten Gruppe finden
Aber wie finden wir den Namen dieser Gruppe heraus, den wir der Eigenschaft idMso des group-Elements hinzufügen
Nur für Abonnenten
Ab hier wird’s wirklich spannend – der Rest ist exklusiv für Abonnenten.
Mit dem Abo von Access im Unternehmen bekommst du den kompletten Artikel – inklusive vollständigem Code, Beispieldatenbank und Schritt-für-Schritt-Erklärung.
So sparst du dir stundenlanges Herumprobieren, vermeidest teure Fehler in deiner Access-Anwendung und kannst Lösungen direkt in deinem Unternehmen einsetzen, statt nur darüber zu lesen.
Teste Access im Unternehmen jetzt 4 Wochen lang kostenlos: Voller Zugriff auf alle Artikel, Downloads und Beispieldatenbanken. Kein Risiko – wenn es für dich nicht passt, kündigst du einfach innerhalb der ersten vier Wochen.
Bereits Abonnent? Hier einloggen
Kostenlos & unverbindlich
Oder hast Du eine konkrete Frage zu Deiner eigenen Access-Anwendung?
Vielleicht stellt Deine Anwendung Dich vor eine Herausforderung, zu der Du bisher keine Lösung findest. Schlechte Performance, kein ausreichender Zugriffsschutz, Du bist unsicher über Dein Datenmodell oder Dein Code liefert unerklärliche Fehler?
In unserem kostenlosen Access-Audit schaut sich André Minhorst persönlich gemeinsam mit Dir Deine Lösung per Zoom an – und zeigt Dir, wo Datenmodell, VBA-Code, Ergonomie und Sicherheit Optimierungspotenzial bieten.
Jetzt kostenloses Access-Audit anfordern →