Présentation du ruban Office Fluent
Remarque
L’utilisation de CommandBars dans certaines applications Microsoft Office a été remplacée par le nouveau composant de ruban de l’interface utilisateur d’Office Fluent.
Le ruban Office Fluent remplace le système de menus en couches, de barres d’outils et de volets Office qui caractérisait les versions antérieures d’Office. Le ruban possède un système d’interfaces plus simple, optimisé pour l’efficacité et la convivialité. Le ruban possède des menus contextuels, des info-bulles, une mini-barre d’outils et des raccourcis clavier améliorés qui favorisent l’efficacité et la productivité de l’utilisateur.
En outre, vous pouvez utiliser l’extensibilité du ruban (ou RibbonX) pour améliorer l’expérience de l’utilisateur. À l’aide du langage XML (Extensible Markup Language) et de l’un des langages de programmation conventionnels, il est possible de manipuler les composants qui constituent l’interface utilisateur du ruban. Le code XML étant constitué de texte brut, vous pouvez créer des fichiers de personnalisation dans n’importe quel éditeur de texte, comme vous pouvez utiliser votre éditeur XML préféré. Vous pouvez également réutiliser des fichiers de personnalisation avec un minimum de modifications à apporter, car chaque application utilise le même modèle de programmation. Par exemple, vous pouvez réutiliser les fichiers de personnalisation que vous créez dans Word, Excel, Access ou PowerPoint.
L’utilisation de fichiers de balisage XML pour personnaliser le ruban réduit considérablement la nécessité de créer des compléments complexes basés sur le modèle objet CommandBars . Toutefois, les compléments écrits dans les versions précédentes d’Office continuent de fonctionner dans le ruban avec peu ou pas de modifications. Vous pouvez créer des personnalisations au niveau de l’application pour le ruban dans Word, Excel ou PowerPoint en procédant comme suit :
- Utilisez des compléments COM dans du code managé ou non managé.
- Utilisez des compléments spécifiques à l’application, tels que les fichiers .ppam et .xlam.
- Utilisez des modèles (fichiers .dotm) dans Word.
Dans un scénario classique, le code du complément COM contient des procédures qui retournent le balisage XML à partir d’un fichier de personnalisation externe ou du code XML qui se trouve dans le code lui-même. Lorsque l’application démarre, le complément charge et exécute le code qui retourne le balisage XML. Office valide le balisage XML par rapport à un schéma XSD, puis le charge en mémoire et l’applique au ruban avant l’affichage du ruban. Les éléments de menu et les contrôles utilisent des procédures de rappel pour exécuter du code dans le complément.
Les personnalisations au niveau du document utilisent le même balisage XML et un fichier de formats Open XML avec l’une des extensions suivantes : docx, .docm, .xlsx, .xlsm, .pptx, .ou pptm. Dans ce scénario, vous créez un fichier de personnalisation qui contient le balisage XML et vous l’enregistrez dans un dossier. Vous modifiez ensuite les parties dans le conteneur Formats Open XML pour qu’ils pointent vers le fichier de personnalisation. Lorsque vous ouvrez le document dans l’application Office, le fichier de personnalisation se charge en mémoire et est appliqué au ruban. Les commandes et les contrôles appellent ensuite le code contenu dans le document pour fournir leurs fonctionnalités.
Solutions existantes
Dans les versions d’Office antérieures à Office 2007, les développeurs utilisaient le modèle objet CommandBars pour créer le code Visual Basic qui a modifié l’interface utilisateur. Dans Office, ce code hérité continue de fonctionner dans la plupart des cas sans modification. Toutefois, les modifications apportées aux barres d’outils dans Office 2003 s’affichent désormais sous un onglet Compléments dans Office.
Le type de personnalisation qui intervient dépend de la conception originale du complément. Par exemple, Office crée un groupe Commandes de menu contenant les éléments ajoutés à la structure de menus précédente (menu Fichier, menu Insertion, menu Outils et ainsi de suite). Il crée également un groupe Commandes de barres d’outils contenant les éléments ajoutés aux barres d’outils intégrées précédentes (telles que les barres d’outils Standard, Mise en forme et Image). Par ailleurs, les barres d’outils personnalisées qui ont été ajoutées par un complément ou un document figurent dans le groupe Barres d’outils personnalisées de l’onglet Compléments.
Les procédures de rappel ajoutent des fonctionnalités au ruban
Avec l’extensibilité du ruban, vous spécifiez des rappels pour mettre à jour les propriétés et effectuer des actions à partir de votre interface utilisateur au moment de l’exécution. Par exemple, considérez la méthode de rappel onAction pour un bouton dans le balisage RibbonX suivant : <button id="myButton" onAction="MyButtonOnAction" />
Ce balisage indique à Office d’appeler la fonction MyButtonOnAction lorsque le bouton est sélectionné. La fonction MyButtonOnAction a une signature spécifique qui dépend de votre choix de langues ; Voici un exemple dans Visual C#.
public void MyButtonOnAction (IRibbonControl control)
{
if (control.Id=="myButton")
{
System.Windows.Forms.MessageBox.Show("Button clicked!");
}
}
Personnalisation du ruban avec des compléments COM
La personnalisation au niveau de l’application se traduit par une modification du ruban qui s’affiche dans l’application, quel que soit le document qui est ouvert. Pour apporter ces modifications, vous devez en premier lieu créer des compléments COM. Pour personnaliser l’interface utilisateur du ruban à l’aide de compléments COM :
- Créez un projet de complément COM. Le complément que vous créez doit implémenter l’interface Extensibility.IDTExtensibility2 que tous les compléments COM implémentent, ainsi que l’interface IRibbonExtensibility qui se trouve dans l’espace de noms Microsoft.Office.Core.
- Générez le complément et le projet d’installation, puis installez le projet.
- Démarrez l’application Office. Lorsque le complément se charge, il déclenche l’événement IDTExtensibility2::OnConnection , qui initialise le complément, comme dans les versions précédentes d’Office.
- Ensuite, la méthode QueryInterface est appelée pour déterminer si l’interface IRibbonExtensibility est implémentée.
- Si tel est le cas, la méthode IRibbonExtensibility::GetCustomUI est appelée pour charger le code XML (à partir du fichier de personnalisation XML ou du code XML incorporé à la procédure) et les personnalisations dans l’application.
- Enfin, l’interface utilisateur personnalisée est mise à disposition de l’utilisateur.
Personnalisation du ruban avec des fichiers de formats Office Open XML
Pour personnaliser l’interface utilisateur à l’aide de code XML, procédez comme suit :
Créez le fichier de personnalisation dans n’importe quel éditeur de texte. Ajoutez un balisage XML qui ajoute de nouveaux composants au ruban, modifie des composants existants ou masque des composants. Enregistrez le fichier sous customUI.xml.
Créez un dossier sur votre Bureau sous le nom customUI et copiez-y le fichier de personnalisation.
Validez le code XML à l’aide d’un schéma d’interface utilisateur personnalisé.
Remarque
Cette étape est facultative.
Créez un document dans l’application Office, puis enregistrez-le en tant que fichier formats Open XML avec l’une des extensions suivantes :.docx, .docm, .xlsx, .xlsm, .pptm ou .pptx. Pour la sécurité, les fichiers qui contiennent des macros ont un suffixe m et peuvent contenir des procédures appelées par les commandes et les contrôles RibbonX.
Ajoutez une extension .zip au nom de fichier du document, puis ouvrez le fichier.
Ajoutez le fichier de personnalisation au conteneur en faisant glisser le dossier vers le fichier.
Extrayez le fichier .rels se trouvant dans le fichier .zip sur votre Bureau. Un dossier _rels contenant le fichier .rels est copié sur votre Bureau.
Ouvrez le fichier .rels et ajoutez une ligne qui crée une relation entre le fichier de document et le fichier de personnalisation, puis enregistrez le fichier.
Rajoutez le dossier _rels au conteneur, en remplaçant le fichier existant.
Réattribuez au fichier son nom d’origine en supprimant l’extension .zip. Lorsque vous ouvrez le fichier Office, l’interface utilisateur du ruban s’affiche avec votre personnalisation.
Format général des fichiers de balisage XML
Utilisez le balisage XML pour personnaliser le ruban. L’exemple suivant montre le format général d’un fichier de balisage XML que vous pouvez utiliser pour personnaliser le ruban dans Word.
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon>
<tabs>
<tab idMso="TabHome">
<group idMso="GroupFont" visible="false" />
</tab>
<tab id="CustomTab" label="My Tab">
<group id="SampleGroup" label="Sample Group">
<toggleButton id="ToggleButton1" size="large" label="Large Toggle Button" getPressed="MyToggleMacro" />
<checkBox id="CheckBox1" label="A CheckBox" screentip="This is a check box" onAction="MyCheckboxMacro" />
<editBox id="EditBox1" getText="MyTextMacro" label="My EditBox" onChange="MyEditBoxMacro"/>
<comboBox id="Combo1" label="My ComboBox" onChange="MyComboBoxMacro">
<item id="Zip1" label="33455" />
<item id="Zip2" label="81611" />
<item id="Zip3" label="31561" />
</comboBox>
<advanced>
<button id="Launcher1" screentip="My Launcher" onAction="MyLauncherMacro" />
</advanced>
</group>
<group id="MyGroup" label="My Group" >
<button id="Button" label="My Large Button" size="large" onAction="MyButtonMacro" />
<button id="Button2" label="My Normal Button" size="normal" onAction="MyOtherButtonMacro" />
</group >
</tab>
</tabs>
</ribbon>
</customUI>
Cet exemple apporte les modifications suivantes au ruban dans Word, dans l’ordre suivant :
L’espace de noms par défaut et un espace de noms personnalisé sont déclarés.
Le groupe intégré GroupFont, qui est situé sous l’onglet intégré Accueil, est masqué.
Un nouvel onglet CustomTab est ajouté à droite du dernier onglet intégré.
Remarque
Utilisez l’attribut id= identificateur pour créer un élément personnalisé, tel qu’un onglet personnalisé. Utilisez l’attribut idMso= identificateur pour faire référence à un élément intégré, tel que l’onglet TabHome (Accueil).
Un nouveau groupe (SampleGroup) est ajouté à l’onglet My Tab (Mon onglet).
Ajoute un bouton ToggleButton1 de grande taille à Mon groupe et spécifie un rappel onAction avec un rappel GetPressed.
Ajoute une case CheckBox1 à Mon groupe avec une info-bulle personnalisée et spécifie un rappel onAction.
Ajoute une zone d’édition EditBox1 à Mon groupe et spécifie un rappel onChange.
Ajoute une zone de liste déroulante Combo1 à Mon groupe avec trois éléments. La zone de liste déroulante spécifie un rappel onChange qui fait référence au texte de chaque élément.
Ajoute un lanceur Launcher1 à Mon groupe avec le rappel onAction défini. Un lanceur peut également afficher une boîte de dialogue personnalisée pour offrir davantage d’options à l’utilisateur.
Un nouveau groupe MyGroup (Mon groupe) est ajouté à l’onglet personnalisé.
Ajoute un bouton Button1 de grande taille à MyGroup et spécifie un rappel onAction.
Ajoute un bouton Button1 de taille normale à MyGroup et spécifie un rappel onAction.
Utilisation des compléments de barre de commandes hérités
Lorsque vous créez un complément COM, vous devez faire en sorte que les utilisateurs puissent interagir avec le complément. Pour répondre à cette exigence, dans les versions précédentes d’Office, vous ajoutiez un élément de menu ou un bouton de barre d’outils à l’aide du modèle objet CommandBars. Dans cette version d’Office, les applications personnalisées continuent de fonctionner dans l’interface utilisateur du ruban sans modifications, dans la plupart des cas. Toutefois, les modifications que vous avez apportées avec le modèle objet CommandBars , ou toute autre technologie qui a modifié les menus ou les barres d’outils telles que WordBasic ou XML, s’affichent sous un onglet Compléments distinct. Cela permet aux utilisateurs de localiser plus facilement les contrôles.
Mise à jour dynamique du ruban
Les rappels qui retournent les propriétés d’un contrôle ne sont normalement appelés qu’une seule fois, à moins que vous ne précisiez que l’appel doit être répété. Vous pouvez actualiser votre rappel en implémentant le rappel onLoad dans l’élément CustomUI. Ce rappel est appelé une fois lorsque le fichier de balisage RibbonX est correctement chargé, puis transmet le code à un objet IRibbonUI .
L’exemple de code suivant obtient l’objet IRibbonUI afin que vous puissiez mettre à jour vos contrôles au moment de l’exécution.
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="ribbonLoaded">
En C#, écrivez un rappel dans votre classe Connect .
IRibbonUI myRibbon;
public void ribbonLoaded(IRibbonUI ribbon) {
myRibbon = ribbon;
}
Le ruban offre aux utilisateurs la possibilité d’exploiter les applications Office avec une grande souplesse. La fonctionnalité du ruban repose sur du code XML déclaratif basé sur du texte, ce qui en facilite la création et la personnalisation. Moyennant quelques lignes de code XML, vous pouvez créer l’interface qui conviendra le mieux aux utilisateurs. Étant donné que le code XML est contenu dans un simple fichier, il est plus simple de modifier l’interface à mesure que les besoins évoluent. Vous pouvez également améliorer la productivité des utilisateurs en plaçant les commandes à un emplacement facile d’accès. Enfin, le ruban apporte une plus grande cohérence entre les applications, ce qui réduit le temps passé par les utilisateurs à se familiariser avec chacune d’elles.
Voir aussi
- Personnaliser le ruban Office Fluent à l’aide d’un complément COM géré
- Personnaliser le ruban Office Fluent à l’aide d’un fichier de formats Open XML
- Personnaliser le ruban Office Fluent à l’aide d’un complément COM Visual Basic
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.