Partager via


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

Mise à jour : novembre 2007

S'applique à

Les informations de cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et applications de Microsoft Office spécifiés.

Type de projet

  • Projets au niveau de l'application

Application Microsoft Office

  • Excel 2007

  • InfoPath 2007

  • Outlook 2007

  • PowerPoint 2007

  • Word 2007

Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet.

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é.

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 illustre 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

Remarque :

Votre ordinateur risque d'afficher des noms ou des emplacements différents pour certains éléments de l'interface utilisateur 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

Vous avez besoin des composants suivants pour exécuter cette procédure pas à pas :

  • Visual Studio Tools pour Office (composant facultatif de Visual Studio 2008 Professional et Visual Studio Team System)

  • Microsoft Office PowerPoint 2007.

Visual Studio Tools pour Office est installé par défaut avec les versions répertoriées de Visual Studio. Pour vérifier s'il est installé, consultez Installation de Visual Studio Tools pour Office.

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 portant le nom MyAddIn, à l'aide du modèle de projet de complément PowerPoint pour la version 2007 de Microsoft Office System. Pour plus d'informations, consultez Comment : créer des projets Visual Studio Tools pour Office.

    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 une instance de Microsoft.Office.Interop.PowerPoint.Shape en tant que membre de MyUserControl. Dans l'étape suivante, vous utiliserez cette Microsoft.Office.Interop.PowerPoint.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

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

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