Ajouter des contrôles ListObject aux feuilles de calcul

Vous pouvez ajouter des contrôles ListObject à une feuille de calcul Microsoft Office Excel au moment de la conception et au moment de l’exécution dans des projets au niveau du document.

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

Vous pouvez aussi ajouter des contrôles ListObject au moment de l’exécution dans des projets de complément VSTO.

Cette rubrique décrit les tâches suivantes :

Ajouter des contrôles ListObject au moment du design

Il existe plusieurs manières d’ajouter des contrôles ListObject à une feuille de calcul Excel dans un projet au niveau du document au moment du design : dans Excel, à partir de la Boîte à outilsVisual Studio, et à partir de la fenêtre Sources de données .

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.

Pour utiliser le ruban dans Excel

  1. Sous l’onglet Insérer du groupe Tableaux , cliquez sur Tableau.

  2. Sélectionnez la ou les cellules que vous souhaitez inclure dans la liste, puis cliquez sur OK.

Pour utiliser la Boîte à outils

  1. À partir de l’onglet Contrôles Excel de la boîte à outils, faites glisser un ListObject sur la feuille de calcul.

    La boîte de dialogue Ajouter un contrôle ListObject s’affiche.

  2. Sélectionnez la ou les cellules que vous souhaitez inclure dans la liste, puis cliquez sur OK.

    Si vous ne souhaitez pas conserver le nom par défaut, vous pouvez le modifier dans la fenêtre Propriétés .

Pour utiliser la fenêtre Sources de données

  1. Ouvrez la fenêtre Sources de données et créez une source de données pour votre projet. Pour plus d’informations, consultez Ajouter de nouvelles connexions.

  2. Faites glisser un tableau de la fenêtre Sources de données vers votre feuille de calcul.

    Un contrôle ListObject lié aux données est ajouté à la feuille de calcul. Pour plus d’informations, consultez Liaison de données et Windows Forms.

Ajouter des contrôles ListObject au moment de l’exécution dans un projet au niveau du document

Vous pouvez ajouter dynamiquement le contrôle ListObject au moment de l'exécution. Cela vous permet de créer les contrôles hôtes en réponse à des événements. Les objets de liste créés de manière dynamique ne sont pas persistants dans la feuille de calcul en tant que contrôles hôtes, une fois la feuille de calcul fermée. Pour plus d’informations, consultez Ajouter des contrôles à Bureau documents au moment de l’exécution.

Pour ajouter par programmation un contrôle ListObject à une feuille de calcul

  1. Dans le gestionnaire d’événements Startup de Sheet1, insérez le code suivant pour ajouter un contrôle ListObject aux cellules A1 à A4.

    Microsoft.Office.Tools.Excel.ListObject employeeData;
    employeeData = this.Controls.AddListObject(this.get_Range("$A$1:$D$4"), "employees");
    

Ajouter des contrôles ListObject au moment de l’exécution dans un projet de complément VSTO

Vous pouvez ajouter par programmation un contrôle ListObject à une feuille de calcul ouverte dans un projet de complément VSTO. Les objets de liste créés de manière dynamique ne sont pas persistants dans la feuille de calcul en tant que contrôles hôtes, une fois la feuille de calcul enregistrée puis fermée. Pour plus d’informations, consultez Étendre les documents Word et les classeurs Excel dans les compléments VSTO au moment de l’exécution.

Pour ajouter par programmation un contrôle ListObject à une feuille de calcul

  1. Le code suivant génère un élément hôte de feuille de calcul basé sur la feuille de calcul ouverte, puis ajoute un contrôle ListObject aux cellules A1 à A4.

    private void AddListObject()
    {
        Worksheet worksheet = Globals.Factory.GetVstoObject(
            Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets[1]);
    
        Microsoft.Office.Tools.Excel.ListObject list1;
        Excel.Range cell = worksheet.Range["$A$1:$D$4"];
        list1 = worksheet.Controls.AddListObject(cell, "list1");
    }