Procédure pas à pas : création de votre premier complément d'application pour Excel
Cette première procédure pas à pas vous indique comment créer un complément d'application pour Microsoft Office Excel. Les fonctionnalités créées dans ce type de solution sont disponibles pour l'application, quels que soient les classeurs ouverts.
S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau application pour Excel 2007 et Excel 2010. Pour en savoir plus, consultez Fonctionnalités disponibles par type d'application et de projet Office.
Cette procédure pas à pas décrit les tâches suivantes :
Création d'un projet de macro complémentaire Excel pour Excel.
Écriture de code qui utilise le modèle objet d'Excel pour ajouter du texte à un classeur lorsqu'il est enregistré
Génération et exécution du projet pour le tester
Nettoyage du projet terminé afin que le complément ne s'exécute plus automatiquement sur votre ordinateur de développement
Notes
Il est possible que votre ordinateur affiche des noms ou des emplacements différents pour certains des éléments d'interface utilisateur de Visual Studio dans les instructions suivantes. L'édition de Visual Studio dont vous disposez et les paramètres que vous utilisez déterminent ces éléments. Pour plus d'informations, consultez Paramètres Visual Studio.
Composants requis
Pour exécuter cette procédure pas à pas, vous devez disposer des composants suivants :
-
Une édition de Visual Studio 2010 qui inclut les outils de développement Microsoft Office. Pour plus d'informations, consultez [Configuration d'un ordinateur pour développer des solutions Office](bb398242\(v=vs.100\).md).
- Microsoft Office Excel 2007 ou Excel 2010.
Création du projet
Pour créer un projet de composant Excel dans Visual Studio
Démarrez Visual Studio.
Dans le menu Fichier, pointez sur Nouveau, puis cliquez sur Projet.
Dans le volet des modèles, développez Visual C# ou Visual Basic, puis Office.
Sous le nœud Office développé, sélectionnez 2007 si Excel 2007 est installé sur votre ordinateur ou le nœud 2010 si vous avez Excel 2010.
Dans la liste des modèles de projet, sélectionnez Complément Excel 2007 ou Complément Excel 2010.
Dans la zone Nom, tapez FirstExcelAddIn.
Cliquez sur OK.
Visual Studio crée le projet FirstExcelAddIn et ouvre le fichier de code ThisAddIn dans l'éditeur.
Écriture de code pour ajouter du texte dans le classeur enregistré
L'étape suivante consiste à ajouter du code dans le fichier ThisAddIn. Le nouveau code utilise le modèle objet d'Excel pour insérer du texte standard dans la première ligne de la feuille de calcul active. La feuille de calcul active est celle qui est ouverte lorsque l'utilisateur enregistre le classeur. Par défaut, le fichier de code ThisAddIn contient le code généré suivant :
Une définition partielle de la classe ThisAddIn. Cette classe fournit un point d'entrée pour votre code et offre un accès au modèle objet d'Excel. Pour plus d'informations, consultez Programmation de compléments d'application. Le reste de la classe ThisAddIn est défini dans un fichier de code masqué que vous ne devez pas modifier.
Les gestionnaires d'événements ThisAddIn_Startup et ThisAddIn_Shutdown. Ces gestionnaires d'événements sont appelés lorsque Excel charge et décharge votre complément. Utilisez ces gestionnaires d'événements pour initialiser votre complément lorsqu'il est chargé, et nettoyer les ressources utilisées par votre complément lorsqu'il est déchargé. Pour plus d'informations, consultez Événements dans les projets Office.
Pour ajouter une ligne de texte au classeur enregistré
Dans le fichier de code ThisAddIn, ajoutez le code suivant à la classe ThisAddIn. Le nouveau code définit un gestionnaire d'événements pour l'événement WorkbookBeforeSave, déclenché lorsqu'un classeur est enregistré.
Lorsque l'utilisateur enregistre un classeur, le gestionnaire d'événements ajoute un nouveau texte au début de la feuille de calcul active.
Private Sub Application_WorkbookBeforeSave(ByVal Wb As Microsoft.Office.Interop.Excel.Workbook, ByVal SaveAsUI As Boolean, ByRef Cancel As Boolean) Handles Application.WorkbookBeforeSave Dim activeWorksheet As Excel.Worksheet = CType(Application.ActiveSheet, Excel.Worksheet) Dim firstRow As Excel.Range = activeWorksheet.Range("A1") firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown) Dim newFirstRow As Excel.Range = activeWorksheet.Range("A1") newFirstRow.Value2 = "This text was added by using code" End Sub
void Application_WorkbookBeforeSave(Microsoft.Office.Interop.Excel.Workbook Wb, bool SaveAsUI, ref bool Cancel) { Excel.Worksheet activeWorksheet = ((Excel.Worksheet)Application.ActiveSheet); Excel.Range firstRow = activeWorksheet.get_Range("A1", missing); firstRow.EntireRow.Insert(Excel.XlInsertShiftDirection.xlShiftDown, System.Type.Missing); Excel.Range newFirstRow = activeWorksheet.get_Range("A1", missing); newFirstRow.Value2 = "This text was added by using code"; }
Si vous utilisez C#, ajoutez le code requis suivant au gestionnaire d'événements ThisAddIn_Startup. Ce code est utilisé pour connecter le gestionnaire d'événements Application_WorkbookBeforeSave à l'événement WorkbookBeforeSave.
this.Application.WorkbookBeforeSave += new Microsoft.Office.Interop.Excel.AppEvents_WorkbookBeforeSaveEventHandler(Application_WorkbookBeforeSave);
Pour modifier le classeur lorsqu'il est enregistré, les exemples de code précédents utilisent les objets suivants :
Le champ Application de la classe ThisAddIn. Le champ Application retourne un objet Microsoft.Office.Interop.Excel.Application, qui représente l'instance actuelle d'Excel.
Le paramètre Wb du gestionnaire d'événements pour l'événement WorkbookBeforeSave. Le paramètre Wb est un objet Microsoft.Office.Interop.Excel.Workbook, qui représente le classeur enregistré. Pour plus d'informations, consultez Vue d'ensemble du modèle objet Excel.
Test du projet
Pour tester le projet
Appuyez sur F5 pour générer et exécuter votre projet.
Lorsque vous générez le projet, le code est compilé dans un assembly qui est inclus dans le dossier de sortie correspondant. Visual Studio crée également un jeu d'entrées du Registre qui permet à Excel de détecter et de charger le complément, et il configure les paramètres de sécurité de l'ordinateur de développement pour permettre au complément de s'exécuter. Pour plus d'informations, consultez Vue d'ensemble du processus de génération de solutions Office.
Dans Excel, enregistrez le classeur.
Vérifiez que le texte suivant a été ajouté au classeur.
Ce texte a été ajouté en utilisant du code.
Fermez Excel.
Nettoyage du projet
Lorsque vous avez terminé de développer un projet, supprimez l'assembly de complément, les entrées du Registre et les paramètres de sécurité de votre ordinateur de développement. Sinon, le complément s'exécutera à chaque fois que vous ouvrirez Excel sur votre ordinateur de développement.
Pour nettoyer le projet de votre ordinateur de développement une fois le projet terminé
- Dans Visual Studio, dans le menu Générer, cliquez sur Nettoyer la solution.
Étapes suivantes
Maintenant que vous avez créé un complément d'application de base pour Excel, vous pouvez perfectionner votre connaissance du développement des compléments en consultant les rubriques suivantes :
Tâches de programmation générales que vous pouvez effectuer dans les compléments : Programmation de compléments d'application.
Tâches de programmation propres aux compléments Excel : Solutions Excel.
Utilisation du modèle objet d’Excel : Vue d'ensemble du modèle objet Excel.
Personnalisation de l'interface utilisateur d'Excel en ajoutant un onglet personnalisé au ruban ou en créant votre propre volet de tâches personnalisé : Personnalisation de l'interface utilisateur Office.
Génération et débogage des compléments d'application pour Excel : Génération et débogage de solutions Office.
Déploiement de compléments d'application pour Excel : Déploiement de solutions Office.
Voir aussi
Concepts
Vue d'ensemble du développement des solutions Office
Autres ressources
Programmation de compléments d'application
Vue d'ensemble du modèle objet Excel
Personnalisation de l'interface utilisateur Office
Génération et débogage de solutions Office