Procédure pas à pas : Automatiser une application à partir d’un volet Office personnalisé

Cette procédure pas à pas montre comment créer un volet Office personnalisé qui automatise PowerPoint. Le volet Office personnalisé insère des dates dans une diapositive quand l’utilisateur clique sur un contrôle MonthCalendar dans le volet Office personnalisé.

S’applique à : les informations contenues dans cette rubrique s’appliquent aux projets de complément VSTO pour Outlook. Pour plus d’informations, consultez Fonctionnalités disponibles par application Office lication et le type de projet.

Bien que cette procédure pas à pas utilise spécifiquement PowerPoint, les concepts présentés ici s’appliquent aux applications listées ci-dessus.

Cette procédure pas à pas décrit les tâches suivantes :

  • Conception de l’interface utilisateur du volet Office personnalisé.

  • Automatisation de PowerPoint à partir du volet Office personnalisé.

  • Affichage du volet Office personnalisé dans PowerPoint.

Remarque

Il est possible que pour certains des éléments de l'interface utilisateur de Visual Studio, votre ordinateur affiche des noms ou des emplacements différents de ceux indiqués 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 Personnaliser l’IDE Visual Studio.

Prérequis

Vous devez disposer des éléments suivants pour exécuter cette procédure pas à pas :

Créer le projet de complément

La première étape consiste à créer un projet de complément VSTO pour PowerPoint.

Pour créer un projet

  1. Créez un projet de complément PowerPoint VSTO nommé MyAddIn, en utilisant le modèle de projet de complément PowerPoint. Pour plus d’informations, consultez Guide pratique pour créer des projets Bureau dans Visual Studio.

    Visual Studio ouvre le fichier de code ThisAddIn.cs ou ThisAddIn.vb et ajoute le projet MyAddIn à Explorateur de solutions.

Concevoir l’interface utilisateur du volet Office personnalisé

Il n’existe aucun concepteur visuel pour les volets Office personnalisés. Toutefois, vous pouvez concevoir un contrôle utilisateur avec la disposition de votre choix. À une étape ultérieure de cette procédure, vous ajouterez le contrôle utilisateur au volet des tâches personnalisé.

Pour concevoir l’interface utilisateur du volet Office personnalisé

  1. Dans le menu Projet , cliquez sur Ajouter un contrôle utilisateur.

  2. Dans la boîte de dialogue Ajouter un nouvel élément , remplacez le nom du contrôle utilisateur par MyUserControl, puis cliquez sur Ajouter.

    Le contrôle utilisateur s'ouvre dans le concepteur.

  3. Sous l’onglet Contrôles communs de la Boîte à outils, faites glisser un contrôle MonthCalendar vers le contrôle utilisateur.

    Si le contrôle MonthCalendar est plus grand que l’aire de conception du contrôle utilisateur, redimensionnez le contrôle utilisateur en fonction du contrôle MonthCalendar .

Automatiser PowerPoint à partir du volet Office personnalisé

Le complément VSTO place la date sélectionnée dans la première diapositive de la présentation active. Utilisez l’événement DateChanged du contrôle pour ajouter la date sélectionnée chaque fois qu’elle change.

Pour automatiser PowerPoint à partir du volet Office personnalisé

  1. Dans le concepteur, double-cliquez sur le contrôle MonthCalendar .

    Le fichier MyUserControl.cs ou MyUserControl.vb s’ouvre, et un gestionnaire d’événements est créé pour l’événement DateChanged .

  2. Ajoutez le code suivant au début du fichier. Ce code crée des alias pour les Microsoft.Office.Core espaces de noms PowerPoint et les espaces de noms.

    using Office = Microsoft.Office.Core;
    using PowerPoint = Microsoft.Office.Interop.PowerPoint;
    
  3. Ajoutez le code suivant à la classe MyUserControl . Ce code déclare un objet Shape en tant que membre de MyUserControl. Dans l’étape suivante, vous allez utiliser cette forme pour ajouter une zone de texte à une diapositive de la présentation active.

    private PowerPoint.Shape textbox;
    
  4. Remplacez le gestionnaire d'événements monthCalendar1_DateChanged par le code suivant. Ce code ajoute une zone de texte à la première diapositive de la présentation active, puis ajoute la date actuellement sélectionnée à la zone de texte. Ce code utilise l’objet Globals.ThisAddIn pour accéder au modèle objet de PowerPoint.

    private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
    {
        try
        {
            if (textbox != null)
            {
                textbox.Delete();
            }
    
            PowerPoint.Slide slide =
                Globals.ThisAddIn.Application.ActivePresentation.Slides[1];
            textbox = slide.Shapes.AddTextbox(
                Office.MsoTextOrientation.msoTextOrientationHorizontal,
                50, 100, 600, 50);
            textbox.TextFrame.TextRange.Text = e.Start.ToLongDateString();
            textbox.TextFrame.TextRange.Font.Size = 48;
            textbox.TextFrame.TextRange.Font.Color.RGB =
                 Color.DarkViolet.ToArgb();
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
    }
    
  5. Dans l’ Explorateur de solutions, cliquez avec le bouton droit sur le projet MyAddIn , puis cliquez sur Générer. Vérifiez que le projet se génère sans erreur.

Afficher le volet Office personnalisé

Pour afficher le volet Office personnalisé quand le complément VSTO démarre, ajoutez le contrôle utilisateur au volet Office dans le gestionnaire d’événements Startup du complément VSTO.

Pour afficher le volet Office personnalisé

  1. Dans l’ Explorateur de solutions, développez PowerPoint.

  2. Cliquez avec le bouton droit sur ThisAddIn.cs ou ThisAddIn.vb , puis cliquez sur Afficher le code.

  3. Ajoutez le code suivant à la classe ThisAddIn . Ce code déclare des instances de MyUserControl et CustomTaskPane en tant que membres de la classe ThisAddIn .

    private MyUserControl myUserControl1;
    private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
    
  4. Remplacez le gestionnaire d'événements ThisAddIn_Startup par le code suivant. Ce code crée CustomTaskPane en ajoutant l'objet MyUserControl à la collection CustomTaskPanes . Le code affiche également le volet des tâches.

    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        myUserControl1 = new MyUserControl();
        myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "Calendar");
        myCustomTaskPane.Visible = true;
    }
    

Tester le complément

Quand vous exécutez le projet, PowerPoint s’ouvre et le complément VSTO affiche le volet Office personnalisé. Cliquez sur le contrôle MonthCalendar pour tester le code.

Pour tester votre complément VSTO

  1. Appuyez sur F5 pour exécuter votre projet.

  2. Vérifiez que le volet Office personnalisé est visible.

  3. Cliquez sur une date du contrôle MonthCalendar dans le volet Office.

    La date est insérée dans la première diapositive de la présentation active.

Étapes suivantes

Pour plus d’informations sur la création de volets Office personnalisés, consultez les rubriques suivantes :