Personnaliser le ruban Office Fluent à l’aide d’un fichier de formats Open XML

Le composant ruban de l’interface utilisateur Microsoft Office Fluent permet aux utilisateurs d’exploiter les applications Office avec une grande souplesse. La fonctionnalité d’extensibilité du ruban (RibbonX) repose sur du code XML déclaratif basé sur du texte qui simplifie la création et la personnalisation de l’interface utilisateur du ruban.

L’exemple de code de cette rubrique montre comment ajouter des composants personnalisés au ruban pour un document unique, au lieu d’ajouter des personnalisations au niveau de l’application. Dans les étapes suivantes, vous ajoutez un onglet personnalisé, un groupe personnalisé et un bouton personnalisé au ruban existant dans Word. Après quoi, nous implémenterons une procédure de rappel pour le bouton servant à insérer un nom de société dans le document.

  1. Créez le fichier de personnalisation dans n’importe quel éditeur de texte et enregistrez le fichier avec le nom customUI.xml.

  2. Ajoutez-y le code XML suivant, puis fermez et enregistrez ce fichier.

     <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. Créez un dossier sur votre Bureau sous le nom customUI et copiez-y le fichier de personnalisation XML.

  4. Validez le code XML à l’aide d’un schéma personnalisé.

    Remarque

    Cette étape est facultative.

  5. Créez un document dans Word et enregistrez-le sous le nom RibbonSample.docm.

  6. Ouvrez Visual Basic Editor et ajoutez la procédure suivante au module de code ThisDocument . Fermez et enregistrez le document.

      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. Ajoutez une extension .zip au nom de fichier du document, puis double-cliquez dessus pour ouvrir le fichier.

  8. Ajoutez le fichier de personnalisation au conteneur en faisant glisser le dossier customUI du Bureau vers le fichier .zip.

  9. Extrayez le fichier .rels sur votre Bureau. Un dossier _rels contenant le fichier .rels est copié sur votre Bureau.

  10. Ouvrez le fichier .rels, puis ajoutez la ligne suivante entre la dernière balise Relationship et la balise Relationships. Une relation est ainsi créée entre le fichier de document et le fichier de personnalisation.

     <Relationship Id="someID" Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml" />
    
  11. Fermez et enregistrez le fichier.

  12. Rajoutez le dossier .rels au fichier conteneur en le faisant glisser à partir du bureau, en remplaçant le fichier existant.

  13. Réattribuez au fichier du document son nom d’origine en supprimant l’extension .zip.

  14. Ouvrez le document pour noter que l’interface utilisateur du ruban contient désormais l’onglet Mon onglet.

  15. Choisissez l’onglet et notez le groupe Exemple de groupe avec un contrôle bouton.

  16. Choisissez le bouton pour insérer le nom de la société dans le document.

Voir aussi

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.