Partager via


Procédure pas à pas : liaison de données aux contrôles dans un volet Actions Excel

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

  • Projets au niveau du document

Version de Microsoft Office

  • Excel 2007

  • Excel 2003

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

Cette procédure pas à pas montre la liaison de données aux contrôles dans un volet Actions de Microsoft Office Excel. Les contrôles illustrent une relation maître/détail entre les tables d'une base de données SQL Server.

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

  • Ajout de contrôles à une feuille de calcul

  • Création d'un contrôle de volet Actions

  • Ajout de contrôles Windows Forms liés aux données à un contrôle de volet Actions

  • Affichage du volet Actions lorsque l'application s'ouvre

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 Excel 2003 ou Microsoft Office Excel 2007. Cette procédure pas à pas utilise des menus d'Excel 2003 dans le cadre des exemples.

  • Accès à un serveur sur lequel est installé l'exemple de base de données SQL Server Northwind

  • Autorisations d'accès en lecture et écriture à la base de données SQL Server

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

La première étape consiste à créer un projet de classeur Excel.

Pour créer un projet

  • Créez un projet de classeur Excel et attribuez-lui le nom Mon volet Actions Excel. Dans l'Assistant, sélectionnez Créer un nouveau document. Pour plus d'informations, consultez Comment : créer des projets Visual Studio Tools pour Office.

    Visual Studio ouvre le nouveau classeur Excel dans le concepteur et ajoute le projet Mon volet Actions Excel à l'Explorateur de solutions.

Ajout d'une nouvelle source de données au projet

Pour ajouter une nouvelle source de données au projet

  1. Si la fenêtre Sources de données n'est pas visible, cliquez sur Afficher les sources de données dans le menu Données.

    Remarque :

    Si Afficher les sources de données n'est pas disponible, cliquez dans la feuille de calcul Excel, puis vérifiez une nouvelle fois.

  2. Cliquez sur Ajouter une nouvelle source de données pour démarrer l'Assistant Configuration de source de données.

  3. Sélectionnez Base de données, puis cliquez sur Suivant.

  4. Sélectionnez une connexion de données pour l'exemple de base de données Northwind dans SQL Server ou ajoutez une nouvelle connexion à l'aide du bouton Nouvelle connexion.

  5. Cliquez sur Suivant.

  6. Désélectionnez l'option pour enregistrer la connexion si elle est sélectionnée, puis cliquez sur Suivant.

  7. Développez le nœud Tables dans la fenêtre Objets de base de données.

  8. Activez la case à cocher située à côté de la table Suppliers.

  9. Développez la table Products et sélectionnez ProductName, SupplierID, QuantityPerUnit et UnitPrice.

  10. Cliquez sur Terminer.

L'Assistant ajoute les tables Suppliers et Products à la fenêtre Sources de données. Il ajoute également un groupe de données typé à votre projet, visible dans l'Explorateur de solutions.

Ajout de contrôles à la feuille de calcul

Ensuite, ajoutez un contrôle NamedRange et un contrôle ListObject à la première feuille de calcul.

Pour ajouter un contrôle NamedRange et un contrôle ListObject

  1. Vérifiez que le classeur Mon volet Actions Excel.xls est ouvert dans le concepteur Visual Studio, avec la feuille Sheet1 affichée.

  2. Dans la fenêtre Sources de données, développez la table Suppliers.

  3. Cliquez sur la flèche de déroulement du nœud Company Name, puis cliquez sur NamedRange.

  4. Faites glisser Company Name de la fenêtre Sources de données vers la cellule A2 dans Sheet1.

    Un contrôle NamedRange nommé CompanyNameNamedRange est créé, et le texte <CompanyName> apparaît dans la cellule A2. En même temps, un BindingSource nommé suppliersBindingSource, un adaptateur de table et une instance de DataSet sont ajoutés au projet. Le contrôle est lié à BindingSource, qui est lié à son tour à l'instance de DataSet.

  5. Dans la fenêtre Sources de données, faites défiler les colonnes qui sont sous la table Suppliers. À la fin de la liste se trouve la table Products ; elle est située à cet endroit car il s'agit d'un enfant de la table Suppliers. Sélectionnez cette table Products, et non celle située au même niveau que la table Suppliers, puis cliquez sur la flèche de déroulement qui apparaît.

  6. Cliquez sur ListObject dans la liste déroulante, puis faites glisser la table Products vers la cellule A6 dans Sheet1.

    Un contrôle ListObject nommé ProductNameListObject est créé dans la cellule A6. En même temps, un BindingSource nommé productsBindingSource et un adaptateur de table sont ajoutés au projet. Le contrôle est lié à BindingSource, qui est lié à son tour à l'instance de DataSet.

  7. Pour C# uniquement, sélectionnez suppliersBindingSource dans la barre d'état des composants et remplacez la valeur de la propriété Modifiers par Internal dans la fenêtre Propriétés.

Ajout de contrôles au volet Actions

Ensuite, vous avez besoin d'un contrôle de volet Actions qui contient une zone de liste déroulante.

Pour ajouter un contrôle de volet Actions

  1. Sélectionnez le projet Mon volet Actions Excel dans l'Explorateur de solutions.

  2. Dans le menu Projet, cliquez sur Ajouter un nouvel élément.

  3. Dans la boîte de dialogue Ajouter un nouvel élément, sélectionnez Contrôle de volet Actions, attribuez-lui le nom ActionsControl, puis cliquez sur Ajouter.

Pour ajouter des contrôles Windows Forms liés aux données à un contrôle de volet Actions

  1. À partir de l'onglet Contrôles communs de la Boîte à outils, faites glisser un contrôle ComboBox vers le contrôle de volet Actions.

  2. Remplacez la valeur de la propriété Size par 171, 21.

  3. Redimensionnez le contrôle utilisateur en fonction de la zone de liste déroulante.

Liaison du contrôle sur le volet Actions à des données

Dans cette section, vous ferez correspondre la source de données de ComboBox et la source de données du contrôle NamedRange sur la feuille de calcul.

Pour définir les propriétés de liaison de données du contrôle

  1. Cliquez avec le bouton droit sur le contrôle de volet Actions, puis cliquez sur Afficher le code.

  2. Ajoutez le code suivant à l'événement Load du contrôle de volet Actions.

    Private Sub ActionsControl_Load(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Me.Load
    
        Me.ComboBox1.DataSource = Globals.Sheet1.SuppliersBindingSource
        Me.ComboBox1.DisplayMember = "CompanyName"
    End Sub
    
    private void ActionsControl_Load(object sender, EventArgs e)
    {
        this.comboBox1.DataSource = Globals.Sheet1.suppliersBindingSource;
        this.comboBox1.DisplayMember = "CompanyName";
    }
    
  3. En C#, vous devez créer un gestionnaire d'événements pour ActionsControl. Vous pouvez placer ce code dans le constructeur ActionsControl. Pour plus d'informations sur la création de gestionnaires d'événements, consultez Comment : créer des gestionnaires d'événements dans Visual Studio Tools pour Office.

    public ActionsControl()
    {
        InitializeComponent();
        this.Load += new EventHandler(ActionsControl_Load);
    }
    

Affichage du volet Actions

Le volet Actions n'est visible que lorsque vous ajoutez le contrôle au moment de l'exécution.

Pour afficher le volet Actions

  1. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur ThisWorkbook.vb ou ThisWorkbook.cs, puis cliquez sur Afficher le code.

  2. Créez une instance du contrôle utilisateur dans la classe ThisWorkbook.

    Dim actions As New ActionsControl
    
    ActionsControl actions = new ActionsControl();
    
  3. Dans le gestionnaire d'événements Startup de ThisWorkbook, ajoutez le contrôle au volet Actions.

    Private Sub ThisWorkbook_Startup(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Startup
    
        Me.ActionsPane.Controls.Add(actions)
    End Sub
    
    private void ThisWorkbook_Startup(object sender, System.EventArgs e)
    {
        this.ActionsPane.Controls.Add(actions);
    }
    

Test de l'application

Vous pouvez à présent tester votre document pour vérifier que le volet Actions s'ouvre en même temps que le document et que les contrôles disposent d'une relation maître/détail.

Pour tester votre document

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

  2. Vérifiez que le volet Actions est visible.

  3. Sélectionnez une société dans la zone de liste. Vérifiez que le nom de la société est répertorié dans le contrôle NamedRange et que les détails sur le produit sont affichés dans le contrôle ListObject.

  4. Sélectionnez plusieurs sociétés pour vérifier que le nom de la société et les détails sur le produit changent en conséquence.

Étapes suivantes

Vous devrez peut-être ensuite exécuter les opérations suivantes :

Voir aussi

Tâches

Comment : gérer la disposition des contrôles dans les volets Actions

Concepts

Vue d'ensemble du volet Actions

Liaison de données aux contrôles