Anpassen des Office Fluent-Menübands mithilfe einer Open XML-Format-Datei

Die Menübandkomponente der Microsoft Office Fluent-Benutzeroberfläche verleiht Benutzern eine flexible Möglichkeit zum Arbeiten mit Office-Anwendungen. RibbonX verwendet einfaches, textbasiertes, deklaratives XML-Markup, um das Menüband zu erstellen und anzupassen.

Das Codebeispiel in diesem Thema zeigt, wie Sie dem Menüband benutzerdefinierte Komponenten für ein einzelnes Dokument hinzufügen, anstatt Anpassungen auf Anwendungsebene hinzuzufügen. In den folgenden Schritten fügen Sie dem vorhandenen Menüband in Word eine benutzerdefinierte Registerkarte, eine benutzerdefinierte Gruppe und eine benutzerdefinierte Schaltfläche hinzu. Außerdem wird eine Rückrufprozedur definiert, die einen Firmennamen in das Dokument einfügt.

  1. Erstellen Sie die Anpassungsdatei in einem beliebigen Text-Editor, und speichern Sie die Datei unter dem Namen customUI.xml.

  2. Fügen Sie der Datei das folgende XML-Markup hinzu, und schließen und speichern Sie die Datei dann.

     <customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui"> 
       <ribbon> 
         <tabs> 
           <tab id="CustomTab" label="My Tab"> 
             <group id="SampleGroup" label="Sample Group"> 
               <button id="Button" label="Insert Company Name" size="large" onAction="ThisDocument.InsertCompanyName" /> 
             </group > 
           </tab> 
         </tabs> 
       </ribbon> 
     </customUI> 
    
  3. Erstellen Sie auf dem Desktop einen Ordner mit dem Namen customUI, und kopieren Sie die XML-Anpassungsdatei in den Ordner.

  4. Überprüfen Sie das XML-Markup mit einem benutzerdefinierten Schema.

    Hinweis

    Dieser Schritt ist optional.

  5. Erstellen Sie ein Dokument in Word, und speichern Sie es unter dem Namen RibbonSample.docm.

  6. Öffnen Sie den Visual Basic-Editor, und fügen Sie dem ThisDocument-Codemodul das folgende Verfahren hinzu. Schließen Sie das Dokument, und speichern Sie es.

      Sub InsertCompanyName(ByVal control As IRibbonControl) 
      ' Inserts the specified text at the beginning of a range or selection. 
      Dim MyText As String 
      Dim MyRange As Object 
      Set MyRange = ActiveDocument.Range 
      MyText = "Microsoft Corporation" 
      ' Range Example: Inserts text at the beginning 
      ' of the active document 
      MyRange.InsertBefore (MyText) 
      ' Selection Example: 
      'Selection.InsertBefore (MyText) 
    End Sub 
    
    
  7. Fügen Sie dem Dateinamen die Erweiterung ZIP hinzu, und doppelklicken Sie dann auf die Datei, um sie zu öffnen.

  8. Fügen Sie die Anpassungsdatei dem Container hinzu, indem Sie den Ordner "customUI" vom Desktop auf die ZIP-Datei ziehen.

  9. Extrahieren Sie die RELS-Datei auf dem Desktop. Ein Ordner _rels, der die RELS-Datei enthält, wird auf den Desktop kopiert.

  10. Öffnen Sie die RELS-Datei, und fügen Sie die folgende Zeile zwischen dem letzten Relationship-Tag und dem Relationships-Tag hinzu. Dadurch wird eine Beziehung zwischen der Dokumentdatei und der Anpassungsdatei erstellt.

     <Relationship Id="someID" Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml" />
    
  11. Schließen und speichern Sie die Datei.

  12. Fügen Sie den Rels-Ordner wieder der Containerdatei hinzu, indem Sie ihn vom Desktop ziehen und die vorhandene Datei überschreiben.

  13. Benennen Sie die Dokumentdatei in den ursprünglichen Namen um, indem Sie die Erweiterung ".zip" entfernen.

  14. Öffnen Sie das Dokument. Beachten Sie, dass im Menüband nun die Registerkarte My Tab angezeigt wird.

  15. Wählen Sie die Registerkarte aus, und beachten Sie die Gruppe Beispielgruppe mit einem Schaltflächen-Steuerelement.

  16. Wählen Sie die Schaltfläche aus, um den Firmennamen in das Dokument einzufügen.

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.