ExportedUI-Dateien

(Last Updated On: 8. April 2022)

Menübandanpassungen und Dokumentvorlagen

Die benutzerdefinierten Anpassungen von Menüband und Schnellzugriffsleiste werden standardmäßig im Programm Word selbst verwaltet (im Hintergrund). Das heißt, sie stehen bei jedem Start von Word zur Verfügung. Unter MacOS ist diese Art der Verwaltung nicht veränderbar, unter Windows können die Anpassungen exportiert und importiert werden. Das bedeutet, dass die Anpassungen aus dem Programm herausverlagert und in separaten Dateien vorgehalten werden können. Alles Nachfolgende gilt nur für Windows.

Das Exportieren geschieht über Menü [Datei – Optionen – Menüband anpassen], dann im rechten Teilfenster die Schaltfläche Importieren/Exportieren und schließlich Alle Anpassungen exportieren wählen. Im jetzt aufgehenden Fenster zum Speicherort der Wahl gehen und mit dem Befehl Speichern abschließen.

Beim Exportieren entsteht eine Datei mit der Endung .exportedUI.

Zum Importieren einer vorher abgespeicherten Menübandanpassung zunächst analog zum Exportieren (s. o.) vorgehen.  Nach Wahl der Schaltfläche Importieren/Exportieren den Befehl Anpassungsdatei importieren ausführen. Im aufgehenden Fenster zum Speicherort gehen, die gewünschte ExportedUI-Datei anklicken und Öffnen wählen.

Beim Import einer jeden ExportedUI-Datei wird die Meldung angezeigt „Sollen alle vorhandenen Anpassungen des Menübandes und der Symbolleiste für den Schnellzugriff für dieses Programm ersetzt werden?“. Darauf ist mit Ja zu antworten, denn genau zum Zweck des Ersetzens möchte man den Import durchführen. Ist die Meldung also überflüssig? Nein, denn sie erinnert daran, dass man mühsam erzeugte Anpassungen erst einmal exportieren sollte, bevor neue Anpassungen importiert werden.

Menüband- und Schnellzugriffsleisten-Anpassungen können darin bestehen, Word-eigene Befehle auf andere Weise, als es dem Standard entspricht, zu sammeln und anzuordnen. Ziel kann es sein, die am häufigsten verwendeten Befehle auf eigenen Registerkarten zugänglich zu machen. In diesem Fall spielt es keine Rolle, welche Dokumentvorlage mit dem gerade bearbeiteten Dokument verbunden ist. Unabhängig von der Dokumentvorlage steht diese Art der Anpassungen immer zur Verfügung.

Sobald eine Menübandpassung jedoch Schaltflächen („Buttons“) mit Makros enthält, ist es von Bedeutung, in welcher Dokumentvorlage sich die Makros befinden. Das heißt, das Arbeitsdokument muss per Anfügen oder Hinzufügen mit der passenden Dokumentvorlage verbunden werden. Ohne diese Verbindung würden die meisten Makroschaltflächen im Menüband (oder auf der Schnellzugriffsleiste) nicht funktionieren.

Daher sollten Menübandanpassungen und Dokumentvorlagen grundsätzlich zusammen gesehen werden. Auf der Basis ein und derselben Dokumentvorlage können mehrere unterschiedliche ExportedUI-Dateien angelegt werden, und bei Bedarf lässt sich die passende importieren.

Es empfiehlt sich, den ExportedUI-Dateien selbsterklärende Namen zu geben. Im Dateinamen sollte immer der Name der zugehörigen Dokumentvorlage enthalten sein, damit man gleich weiß, mit welcher Dokumentvorlage das Dokument, in dem man die benutzerdefinierten Anpassungen verwenden möchte, verbunden werden muss.

Theoretisch könnte man sämtliche Makros (selbstangelegte oder aus anderen Quellen übernommene) in der Normal.dotm speichern und mehrere unterschiedliche Menübandanpassungen erzeugen, die sich auf die Normal.dotm beziehen. Aus mehreren Gründen ist es aber empfehlenswert, Makros in speziellen Dokumentvorlagen abzuspeichern.

  • Der wichtigste Grund lautet: Eine spezielle Dokumentvorlage kann mit anderen Personen ausgetauscht werden, die Normal.dotm dagegen nicht.
  • Das bedeutet u. a., dass Menübandanpassungen (also letztlich ExportedUI-Dateien), die in Verbindung mit der Normal.dotm erzeugt wurden, nicht für die Weitergabe an andere Personen geeignet sind.

„Speziell“ ist so zu verstehen, dass diese Dokumentvorlagen für bestimmte Zwecke angelegt werden. So könnte es eine Dokumentvorlage geben, die „Meine Makros“ heißt und sämtliche eigenen Makros aufnimmt. Oder man legt Dokumentvorlagen an, die Projekten (z. B. Buchreihen, einzelnen größeren Buchmanuskripten oder allen Projekten eines Verlages) zugeordnet sind. In Unternehmen könnte es Dokumentvorlagen für bestimmte Marketingprojekte geben usw.

Anpassungen der Schnellzugriffsleiste

In einer ExportedUI-Datei sind neben den Menübandanpassungen auch die Anpassungen der Schnellzugriffsleiste enthalten. Da die Schnellzugriffsleiste nur wenig Platz für die Darstellung der Schaltflächen bietet und vor allem keine Beschriftungen angezeigt werden können, empfiehlt es sich, hier nur Word-eigene Befehle abzulegen, denn diese sind in den meisten Fällen an den Grafiken auf den Schaltflächen zu identifizieren.

Grundsätzlich ist es erlaubt, das Menüband nicht zu ändern und lediglich eine Anpassung der Schnellzugriffsleiste mit Word-eigenen Befehlen vorzunehmen. Eine ExportedUI-Datei auf dieser Basis würde dann nur diese Anpassungen enthalten. Man könnte unterschiedliche Schnellzugriffsleisten-Anpassungen erzeugen und entsprechende ExportedUI-Dateien abspeichern.

Sobald aber Makros ins Spiel kommen, ist es effektiver, auch das Menüband anzupassen und hier die zugehörigen Makroschaltflächen anzulegen. Für Makroschaltflächen stellt Word nur ein begrenztes Repertoire an Schaltflächengrafiken zur Verfügung, die nicht selbsterklärend sind. Bei der Nutzung einer großen Zahl an Makros kann es sogar vorkommen, dass für verschiedene Makros dieselbe Schaltflächengrafik verwendet werden muss. Daher ist es wichtig, den Schaltflächen Beschriftungen zuzuordnen, die deutlich machen, um welches Makro es sich jeweils handelt. Dazu ist Platz nötig, der nur auf dem Menüband zur Verfügung steht.

Geeignete Editor-Programme

Eine ExportedUI-Datei lässt sich mit jedem ASCII-Editor öffnen. Allerdings sollte ein Editor den Vorzug erhalten, mit dem die Syntax hervorgehoben werden kann.

Ein sehr gut geeigneter Editor ist Notepad++. Zur geordneten Darstellung des Codes sollte am besten XML als Sprache für die Syntaxhervorhebung gewählt werden. Nun erscheinen Elementnamen, Attribute und Attributwerte in unterschiedlichen Farben. Beim Hineinklicken in ein Element werden Anfang und Ende des Elements hervorgehoben.

Bearbeitung der ExportedUI-Datei

Bevor man die ExportedUI-Datei inhaltlich bearbeitet, sollte sie formal aufbereitet werden und zwar mit dem Ziel, dass jedes Element in einer separaten Zeile steht.
Im Ersetzen-Fenster von Notepad++ sollte mit regulären Ausdrücken gearbeitet werden: Alle „><“ sind durch „>\n<“ zu ersetzen, wobei \n für „neue Zeile“ steht. Es wird also nach allen schließenden spitzen Klammern eine neue Zeile eingefügt. Das Ergebnis wird im nachfolgenden Bild für eine Beispiel-ExportedUI-Datei gezeigt.

Ausschnitt aus einer typischen ExportedUI-Datei, wie sie sich in Notepad zeigt. Die Line Feeds (LF) sind beim Suchen/Ersetzen durch das Muster \n erzeugt worden.

Zeilenschaltungen (also Line Feeds) ändern nichts an der Syntax und am Funktionieren der ExportedUI-Datei. Die so vorbereitete Datei kann nun inhaltlich verändert und anschließend wieder abgespeichert werden.

Grundsätzlich ist es möglich, im Editor z. B.

  • Registerkarten- oder Gruppennamen zu ändern oder
  • Elemente aus einer anderen ExportedUI-Datei zu übernehmen.

Nach dem Speichern kann die geänderte Datei erneut in Word (per Menüband anpassen) importiert werden, und alle Änderungen sind zu sehen.

Beispiele für Elemente:

  • <mso:qat> … </mso:qat>: Eltern-Element, das die Tochter-Elemente (Funktionsbuttons) für die Schnellzugriffsleiste umfasst (dabei steht qat für „Quick Access Toolbar“)
  • <mso:tabs> … </mso:tabs>: Eltern-Element, das die Tochter-Elemente (Registerkarten, Gruppen, Funktionsbuttons) für das Menüband umfasst
  • <mso:tab …> … </mso:tab>: Registerkarte (Tochterelement zu <mso:tabs> … </mso:tabs>, auch Eltern-Element für Gruppen und Funktionsbuttons)
  • <mso:group …> … </mso:group>: Gruppe (Tochterelement zu <mso:tab> … </mso:tab>, auch Eltern-Element für Funktionsbuttons)
  • <mso:separator idQ=„msox:sep2“ visible=„true“/>: bezeichnet die zweite Separationslinie (separator idQ=„msox:sep2“) auf der Schnellzugriffsleiste
  • <mso:control idQ=„mso:StyleGalleryClassic“ visible=„true“/>: Funktions-Button, der sowohl auf der Schnellzugriffsleiste als auch im Menüband liegen kann; „mso:StyleGalleryClassic“ visible=„true“ bedeutet, dass die „klassischen“ Formatvorlagen eingeblendet werden
  • <mso:button idQ=„x2:makro1_0_147E3F2D“ label=„Testmakro“ imageMso=„AppointmentColor3“ onAction=„markierung_als_ut“ visible=„true“/>: Makro-Button mit dem Namen „Testmakro“; ablaufen wird das Makro, das unter dem Namen „makro1“ im Makromodul der Dokumentvorlage enthalten ist.

Besonders gut: Mehrere ExportedUI-Dateien können zusammengeführt werden! Zum Beispiel kann man den Code, der zu einer Registerkarte gehört (beginnt mit <mso:tab …> und endet mit </mso:tab>), in der einen ExportedUI-Datei kopieren und in einer anderen einfügen. Am besten danach unter neuem Namen abspeichern. Importiert man anschließend diese neue ExportedUI-Datei in Word, so steht die Registerkarte zur Verfügung.

Es ist klar, dass alle Eingriffe nur sehr moderat vorgenommen werden sollten, damit die von Word erwartete Syntax nicht zerstört wird.

Achtung: Makros werden von Schnellzugriffsleiste oder Menüband aus ausschließlich über den eigentlichen Makronamen aufgerufen (im vorstehenden Beispiel „makro1“). Das heißt, sie müssen in eindeutiger Weise zur Verfügung stehen.

Läuft ein Makro nicht oder falsch, so hat das mindestens einen der folgenden Gründe:

  • Die Dokumentvorlage mit dem gewünschten Makro ist nicht mit dem Dokument verbunden. Lösung: per Anfügen oder Hinzufügen verbinden.
  • Das betroffene Makro existiert mit dem selben Namen in mehreren gerade geöffneten Dateien oder in mehreren mit dem Dokument verbundenen Dokumentvorlagen (z. B. auch in der Normal.dotm), und zwar mit unterschiedlichen Codes. Lösung: Makro in den anderen Dateien löschen oder umbenennen, sodass ausschließlich das Makro aus der „richtigen“ Dokumentvorlage wirken kann.
  • Es fehlt die Formatvorlage, auf die das Makro zugreifen will. Lösung: Sobald bei Makros Formatvorlagen ins Spiel kommen, müssen diese im Dokument vorhanden sein, das heißt, man muss entweder die Dokumentvorlage (die die Formatvorlagen enthält) per Anfügen mit dem Dokument verbinden und das Häkchen bei „Dokumentformatvorlagen automatisch aktualisieren“ setzen oder die Dokumentvorlage per Hinzufügen verbinden und im Organisieren-Fenster die benötigten Formatvorlagen in das Dokument kopieren.

Die Tatsache, dass Makros ausschließlich über den eigentlichen Makronamen aufgerufen werden, bedeutet umgekehrt: Im Code einer ExportedUI-Datei ist nicht mehr als der Makroname nötig, um eine Verbindung zwischen Menüband und Makro herzustellen!

Man kann also jedes beliebige Makro jederzeit mit dem Menüband verknüpfen; man muss lediglich dafür sorgen, dass der Makroname im Code der ExportedUI-Datei (und hier im Code eines Makro-Buttons) steht und das Makro in der Dokumentvorlage enthalten ist, die einem Dokument angefügt oder hinzugefügt wird. (Das Anfügen bzw. Hinzufügen geschieht über Menüband [EntwicklertoolsDokumentvorlage].)

Allerdings scheint es nicht möglich zu sein, einfach den Code eines einzelnen Makro-Buttons in der einen ExportedUI-Datei zu kopieren und an beliebiger Stelle in einer anderen ExportedUI-Datei einzufügen und damit eine funktionierende Anpassung zu erhalten. Jeder Button ist Teil einer Gruppe und diese wieder Teil einer Registerkarte. Der Code ganzer Registerkarten kann von einer ExportedUI-Datei zu einer anderen übertragen werden, aber bei Gruppen und Buttons scheinen die internen IDs eine große Rolle zu spielen.

Nach dem Import in Word kann aber jede Registerkarte oder Gruppe mit den Word-eigenen Mitteln (Funktion Menüband anpassen) nachbearbeitet werden. Das heißt, überflüssige Buttons (oder Gruppen) können einfach entfernt werden.

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.