Programmation de personnalisations au niveau du document
Mise à jour : novembre 2007
S'applique à |
---|
Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés. Type de projet
Version de Microsoft Office
Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet. |
Lorsque vous étendez Microsoft Office Word ou Microsoft Office Excel par le biais d'une personnalisation au niveau du document, vous pouvez effectuer les tâches suivantes :
Automatiser l'application Microsoft Office en utilisant le modèle objet de l'application.
Ajouter des contrôles à la surface du document.
Appeler du code Visual Basic pour Applications (VBA) dans le document depuis l'assembly de personnalisation.
Appeler du code dans l'assembly de personnalisation depuis VBA.
Gérer certains aspects du document lorsqu'il se trouve sur un serveur sur lequel Microsoft Office n'est pas installé.
Personnaliser l'interface utilisateur de l'application.
Pour obtenir des informations générales sur les personnalisations au niveau du document ainsi que sur d'autres types de solutions que vous pouvez créer avec Visual Studio Tools pour Office, consultez Vue d'ensemble du développement des solutions Office.
Code d'écriture dans les projets au niveau du document
Lorsque vous créez un projet au niveau du document, Visual Studio Tools pour Office génère automatiquement dans celui-ci une classe que vous pouvez utiliser pour commencer à écrire votre code. Visual Studio Tools pour Office génère des classes différentes pour Word et Excel :
Dans les projets au niveau du document pour Word, la classe est appelée ThisDocument par défaut.
Les projets au niveau du document pour Excel comportent plusieurs classes générées : une pour le classeur lui-même et une autre pour chaque feuille de calcul. Par défaut, ces classes portent les noms suivants :
ThisWorkbook
Sheet1
Sheet2
Sheet3
La classe générée inclut des gestionnaires d'événements appelés à l'ouverture et à la fermeture du document. Pour exécuter un code à l'ouverture du document, ajoutez celui-ci au gestionnaire d'événements Startup. Pour exécuter du code juste avant la fermeture du document, ajoutez-le au gestionnaire d'événements Shutdown. Pour plus d'informations, consultez Événements de projet Visual Studio Tools pour Office.
Chacune des classes générées automatiquement dans un projet au niveau du document est dérivée d'une classe Visual Studio Tools pour Office appelée élément hôte. Ainsi, la classe ThisDocument d'un projet Word est dérivée de l'élément hôte Microsoft.Office.Tools.Word.Document. Pour plus d'informations, consultez Vue d'ensemble des éléments hôtes et des contrôles hôtes.
Accès au modèle objet de l'application hôte
Pour accéder au modèle objet de l'application hôte, utilisez des membres de la classe générée dans votre projet. Chacune de ces classes correspond à une classe du modèle objet d'Excel ou Word, et toutes contiennent pour la plupart les mêmes propriétés, méthodes et événements. Par exemple, la classe ThisDocument d'un projet au niveau du document dans Word fournit pour la plupart les mêmes membres que la classe Microsoft.Office.Interop.Word.Document du modèle objet Word.
L'exemple de code suivant indique comment utiliser le modèle objet Word pour enregistrer le document qui fait partie d'une personnalisation au niveau du document pour Word. Cet exemple est destiné à être exécuté depuis la classe ThisDocument.
Me.Save()
this.Save();
Pour effectuer la même opération en dehors de la classe ThisDocument, utilisez l'objet Globals pour accéder à la classe ThisDocument. Pour plus d'informations sur l'objet Globals, consultez Accès global aux objets dans les projets Visual Studio Tools pour Office.
Par exemple, vous pouvez ajouter ce code à un fichier de code de volet Actions si vous souhaitez inclure un bouton Enregistrer dans l'interface utilisateur de celui-ci.
Globals.ThisDocument.Save()
Globals.ThisDocument.Save();
La classe ThisDocument dérivant de l'élément hôte Microsoft.Office.Tools.Word.Document, la méthode Save appelée dans ce code est vraiment la méthode Save de l'élément hôte Microsoft.Office.Tools.Word.Document. Cette méthode correspond à la méthode Save de la classe Microsoft.Office.Interop.Word.Document du modèle objet Word.
Pour plus d'informations sur l'utilisation des modèles objets de Word et Excel, consultez Vue d'ensemble du modèle objet Word et Vue d'ensemble du modèle objet Excel.
Ajout de contrôles à des documents
Pour personnaliser l'interface utilisateur du document, vous pouvez ajouter des contrôles Windows Forms ou des contrôles hôtes à la surface du document. En combinant plusieurs jeux de contrôles et en écrivant du code, vous pouvez lier les contrôles aux données, rassembler des informations auprès de l'utilisateur et répondre aux actions de celui-ci.
Les contrôles hôtes sont des classes qui étendent certains objets du modèle objet Word et Excel. Par exemple, le contrôle hôte Microsoft.Office.Tools.Excel.ListObject fournit toutes les fonctionnalités de Microsoft.Office.Interop.Excel.ListObject dans Excel. Toutefois, le contrôle hôte Microsoft.Office.Tools.Excel.ListObject contient aussi des événements supplémentaires et des fonctions de liaison de données.
Pour plus d'informations, consultez Vue d'ensemble des éléments hôtes et des contrôles hôtes et Vue d'ensemble des contrôles Windows Forms dans les documents Office.
Combinaison de VBA et de personnalisations au niveau du document
Vous pouvez utiliser du code VBA dans un document appartenant à une personnalisation au niveau du document Visual Studio Tools pour Office. Dans tous les projets au niveau du document, vous pouvez appeler du code VBA dans le document à partir de l'assembly de personnalisation. Dans les projets au niveau du document pour la version 2007 de Microsoft Office System, vous pouvez également configurer votre projet pour permettre au code VBA dans le document d'appeler le code dans l'assembly de personnalisation.
Pour plus d'informations, consultez Combinaison de VBA et de personnalisations au niveau du document.
Gestion de documents sur un serveur
Vous pouvez gérer différents aspects des personnalisations au niveau du document sur un serveur qui n'est pas doté de Microsoft Office Word ou de Microsoft Office Excel. Par exemple, vous pouvez accéder aux données du cache de données du document et les modifier. Vous pouvez également gérer l'assembly de personnalisation Visual Studio Tools pour Office associé au document. Par exemple, vous pouvez supprimer par programme l'assembly du document afin que le document n'exécute plus votre code, ou vous pouvez joindre par programme un assembly à un document.
Pour plus d'informations, consultez Gestion de documents sur un serveur à l'aide de la classe ServerDocument.
Personnalisation de l'interface utilisateur des applications Microsoft Office
Vous pouvez personnaliser l'interface utilisateur de Word et d'Excel en ayant recours à une personnalisation au niveau du document.
Versions 2003 et 2007 de Microsoft Office
Pour Microsoft Office 2003 et la version 2007 de Microsoft Office System, vous pouvez personnaliser l'interface utilisateur de la manière suivante :
Ajouter des contrôles hôtes ou des contrôles Windows Forms à la surface du document.
Pour plus d'informations, consultez Contrôles hôtes Word, Contrôles hôtes Excel et Vue d'ensemble des contrôles Windows Forms dans les documents Office.
Ajouter un volet Actions au document.
Pour plus d'informations, consultez Vue d'ensemble du volet Actions.
Ajouter des balises actives au document.
Pour plus d'informations, consultez Vue d'ensemble des balises actives.
Version 2007
Pour Word 2007 et Excel 2007, vous pouvez également personnaliser l'interface utilisateur de la manière suivante :
Ajouter des onglets personnalisés au ruban.
Pour plus d'informations, consultez Vue d'ensemble du ruban.
Ajouter des groupes personnalisés à un onglet intégré du ruban.
Pour plus d'informations, consultez Comment : personnaliser un onglet intégré.
Version 2003
Pour Word 2003 et Excel 2003, vous pouvez également personnaliser l'interface utilisateur de la manière suivante :
Ajouter des barres d'outils personnalisées et des éléments de barre d'outils.
Pour plus d'informations, consultez Comment : créer des barres d'outils Office par programme.
Ajouter des menus et des éléments de menu.
Pour plus d'informations, consultez Comment : créer par programme des menus Office.
Pour plus d'informations sur la personnalisation de l'interface utilisateur des applications Microsoft Office, consultez Personnalisation de l'interface utilisateur Office.
Voir aussi
Tâches
Comment : créer et modifier des propriétés de document personnalisées
Comment : lire des propriétés de document et en écrire
Concepts
Combinaison de VBA et de personnalisations au niveau du document
Gestion de documents sur un serveur à l'aide de la classe ServerDocument