Partager via


Procédure pas à pas : automatisation d'une application à partir d'un volet de tâches personnalisé

Cette procédure pas à pas montre comment créer un volet de tâches personnalisé qui automatise PowerPoint. Le volet de tâches personnalisé insère des dates dans une diapositive lorsque l'utilisateur clique sur un contrôle MonthCalendar présent sur le volet de tâches personnalisé.

S'applique à : Les informations contenues dans cette rubrique s'appliquent aux projets de niveau application pour les applications suivantes : Excel 2007, Excel 2010, InfoPath 2007, InfoPath 2010, Outlook 2007, Outlook 2010, PowerPoint 2007, PowerPoint 2010, Word 2007 et Word 2010. Pour en savoir plus, consultez Fonctionnalités disponibles par type d'application et de projet Office.

Cette procédure pas à pas utilise spécifiquement PowerPoint. Toutefois, les concepts qui y sont présentés sont applicables à toutes les applications susmentionnées.

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

  • Conception de l'interface utilisateur du volet de tâches personnalisé.

  • Automatisation de PowerPoint à partir du volet de tâches personnalisé

  • Affichage du volet de tâches personnalisé dans PowerPoint

Notes

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. Ces éléments dépendent de l'édition de Visual Studio dont vous disposez et des paramètres que vous utilisez. Pour plus d'informations, consultez Utilisation des paramètres.

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 PowerPoint 2007 ou Microsoft PowerPoint 2010.

Création du projet de complément

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

Pour créer un projet

  • Créez un projet de complément PowerPoint avec le nom MyAddIn, en utilisant le modèle de projet Complément PowerPoint. Pour plus d'informations, consultez Comment : créer des projets Office dans Visual Studio.

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

Conception de l'interface utilisateur du volet de tâches personnalisé

Il n'existe pas de concepteur visuel pour les volets de tâches personnalisés, mais 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 de tâches personnalisé.

Pour concevoir l'interface utilisateur du volet de tâches personnalisé

  1. Dans le menu Projet, choisissez 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'affiche dans le concepteur.

  3. À partir de 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 pour qu'il corresponde au contrôle MonthCalendar.

Automatisation de PowerPoint à partir du volet de tâches personnalisé

L'objectif du complément est d'ajouter une date sélectionnée sur 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 modification.

Pour automatiser PowerPoint à partir du volet de tâches 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 en haut du fichier. Ce code crée des alias pour les espaces de noms Microsoft.Office.Core et Microsoft.Office.Interop.PowerPoint.

    Imports Office = Microsoft.Office.Core
    Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
    
    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 utiliserez cette Shape pour ajouter une zone de texte à une diapositive dans la présentation active.

    Private TextBox As PowerPoint.Shape
    
    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 dans la présentation active, puis ajoute la date sélectionnée à la zone de texte. Il utilise l'objet Globals.ThisAddIn pour accéder au modèle objet de PowerPoint.

    Private Sub MonthCalendar1_DateChanged( _
        ByVal sender As System.Object, _
        ByVal e As System.Windows.Forms.DateRangeEventArgs) _
        Handles MonthCalendar1.DateChanged
    
        Try
            If TextBox IsNot Nothing Then
                TextBox.Delete()
            End If
    
            Dim Slide As 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 = _
                System.Drawing.Color.DarkViolet.ToArgb()
    
        Catch ex As Exception
            System.Windows.Forms.MessageBox.Show(ex.ToString())
        End Try
    End Sub
    
    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 la génération du projet s'exécute correctement.

Affichage du volet de tâches personnalisé

Pour afficher le volet de tâches personnalisé lors du démarrage du complément, ajoutez le contrôle utilisateur au volet de tâches dans le gestionnaire d'événements Startup du complément.

Pour afficher le volet de tâches 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 de CustomTaskPane comme membres de la classe ThisAddIn.

    Private myUserControl1 As MyUserControl
    Private myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane
    
    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 un nouveau CustomTaskPane en ajoutant l'objet MyUserControl à la collection CustomTaskPanes. Il affiche également le volet de tâches.

    Private Sub ThisAddIn_Startup(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles Me.Startup
    
        myUserControl1 = New MyUserControl
        myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "Calendar")
        myCustomTaskPane.Visible = True
    End Sub
    
    private void ThisAddIn_Startup(object sender, System.EventArgs e)
    {
        myUserControl1 = new MyUserControl();
        myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "Calendar");
        myCustomTaskPane.Visible = true;
    }
    

Test du complément

Lorsque vous exécutez le projet, PowerPoint s'ouvre et le complément affiche le volet de tâches personnalisé. Cliquez sur le contrôle MonthCalendar pour tester le code.

Pour tester votre complément

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

  2. Vérifiez que le volet de tâches personnalisé est visible.

  3. Cliquez sur une date dans le contrôle MonthCalendar sur le volet de tâches.

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

Étapes suivantes

Pour en savoir plus sur la création de volets de tâches personnalisés, consultez les rubriques ci-dessous :

Voir aussi

Tâches

Comment : ajouter un volet de tâches personnalisé à une application

Procédure pas à pas : synchronisation d'un volet de tâches personnalisé avec un bouton dans le ruban

Procédure pas à pas : affichage de volets de tâches personnalisés avec des messages électroniques dans Outlook

Comment : afficher des volets de tâches personnalisés avec des messages électroniques dans Outlook

Concepts

Gestion des volets de tâches personnalisés dans plusieurs fenêtres d'application

Autres ressources

Vue d'ensemble des volets de tâches personnalisés