Procédure pas à pas : liaison de données complexe dans un projet au niveau du documentWalkthrough: Complex Data Binding in a Document-Level Project

Cette procédure pas à pas illustre les principes fondamentaux de la liaison de données complexe dans un projet au niveau du document.This walkthrough demonstrates the basics of complex data binding in a document-level project. Vous pouvez lier plusieurs cellules dans une feuille de calcul Microsoft Office Excel aux champs de la base de données Northwind SQL Server.You can bind multiple cells in a Microsoft Office Excel worksheet to fields in the Northwind SQL Server database.

S’applique à : Les informations contenues dans cette rubrique s’appliquent aux projets de niveau document pour Excel.Applies to: The information in this topic applies to document-level projects for Excel. Pour plus d’informations, consultez Fonctionnalités disponibles par type d’application et de projet Office.For more information, see Features Available by Office Application and Project Type.

Cette procédure pas à pas décrit les tâches suivantes :This walkthrough illustrates the following tasks:

  • Ajout d’une source de données à votre projet de classeur.Adding a data source to your workbook project.

  • Ajout de contrôles liés aux données à une feuille de calcul.Adding data-bound controls to a worksheet.

  • Enregistrer les modifications de données dans la base de données.Saving data changes back to the database.

    Note

    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.Your computer might show different names or locations for some of the Visual Studio user interface elements in the following instructions. L'édition de Visual Studio dont vous disposez et les paramètres que vous utilisez déterminent ces éléments.The Visual Studio edition that you have and the settings that you use determine these elements. Pour plus d'informations, consultez Personnalisation de l'IDE.For more information, see Personalizing the IDE.

PrérequisPrerequisites

Pour exécuter cette procédure pas à pas, vous devez disposer des composants suivants :You need the following components to complete this walkthrough:

  • Une édition de Visual Studio qui inclut les outils de développement Microsoft Office.An edition of Visual Studio that includes the Microsoft Office developer tools. Pour plus d’informations, consultez configuration d’un ordinateur pour développer des Solutions Office.For more information, see Configuring a Computer to Develop Office Solutions.

  • Excel 2013Excel 2013 ou Excel 2010Excel 2010. or Excel 2010Excel 2010.

  • Accès à un serveur avec la base de données Northwind SQL Server.Access to a server with the Northwind SQL Server sample database.

  • Autorisations pour lire et écrire dans la base de données SQL Server.Permissions to read from and write to the SQL Server database.

Création d'un projetCreating a New Project

La première étape consiste à créer un projet de classeur Excel.The first step is to create an Excel workbook project.

Pour créer un projetTo create a new project

  1. Créer un projet de classeur Excel portant le nom une liaison de données complexe Mes.Create an Excel workbook project with the name My Complex Data Binding. Dans l’Assistant, sélectionnez créer un nouveau document.In the wizard, select Create a new document.

    Pour plus d'informations, consultez How to: Create Office Projects in Visual Studio.For more information, see How to: Create Office Projects in Visual Studio.

    Visual Studio ouvre le nouveau classeur Excel dans le concepteur et ajoute le une liaison de données complexe Mes projet l’Explorateur de solutions.Visual Studio opens the new Excel workbook in the designer and adds the My Complex Data Binding project to Solution Explorer.

Création de la source de donnéesCreating the Data Source

Utilisez la fenêtre Sources de données pour ajouter un dataset typé à votre projet.Use the Data Sources window to add a typed dataset to your project.

Pour créer la source de donnéesTo create the data source

  1. Si la fenêtre Sources de données n'est pas visible, affichez-la en choisissant, dans la barre de menus, Affichage, Autres fenêtres, Sources de données.If the Data Sources window is not visible, display it by, on the menu bar, choosing View, Other Windows, Data Sources.

  2. Choisissez Ajouter une nouvelle source de données pour démarrer l' Assistant Configuration de source de données.Choose Add New Data Source to start the Data Source Configuration Wizard.

  3. Sélectionnez base de données puis cliquez sur suivant.Select Database and then click Next.

  4. Sélectionnez une connexion de données à la base de données Northwind exemple SQL Server ou ajouter une nouvelle connexion à l’aide de la nouvelle connexion bouton.Select a data connection to the Northwind sample SQL Server database, or add a new connection by using the New Connection button.

  5. Une fois une connexion a été sélectionnée ou créée, cliquez sur suivant.After a connection has been selected or created, click Next.

  6. Désactivez l’option pour enregistrer la connexion si elle est activée, puis cliquez sur suivant.Clear the option to save the connection if it is selected, and then click Next.

  7. Développez le Tables nœud dans le objets de base de données fenêtre.Expand the Tables node in the Database objects window.

  8. Sélectionnez la case à cocher à côté du employés table.Select the check box next to the Employees table.

  9. Cliquez sur Terminer.Click Finish.

    L’Assistant ajoute les employés de la table vers le des Sources de données fenêtre.The wizard adds the Employees table to the Data Sources window. Il ajoute également un dataset typé à votre projet qui est visible dans l’Explorateur de solutions.It also adds a typed dataset to your project that is visible in Solution Explorer.

Ajout de contrôles à la feuille de calculAdding Controls to the Worksheet

Affiche une feuille de calcul le employés table lorsque le classeur est ouvert.A worksheet will display the Employees table when the workbook is opened. Les utilisateurs seront en mesure d’apporter des modifications aux données et enregistrez ensuite ces modifications sur la base de données en cliquant sur un bouton.Users will be able to make changes to the data and then save those changes back to the database by clicking a button.

Pour lier la feuille de calcul à la table automatiquement, vous pouvez ajouter un ListObject contrôle à la feuille de calcul à partir de la des Sources de données fenêtre.To bind the worksheet to the table automatically, you can add a ListObject control to the worksheet from the Data Sources window. Pour permettre à l’utilisateur la possibilité d’enregistrer les modifications, ajoutez un Button contrôle depuis la boîte à outils.To give the user the option to save changes, add a Button control from the Toolbox.

Pour ajouter un objet de listeTo add a list object

  1. Vérifiez que le mes Binding.xlsx de données complexe classeur est ouvert dans le concepteur Visual Studio, avec Feuil1 affiché.Verify that the My Complex Data Binding.xlsx workbook is open in the Visual Studio designer, with Sheet1 displayed.

  2. Ouvrez le des Sources de données et sélectionnez le employés nœud.Open the Data Sources window and select the Employees node.

  3. Cliquez sur la flèche déroulante qui s’affiche.Click the drop-down arrow that appears.

  4. Sélectionnez ListObject dans la liste déroulante.Select ListObject in the drop-down list.

  5. Faites glisser le employés table à cellule A6.Drag the Employees table to cell A6.

    A ListObject contrôle nommé EmployeesListObject est créé dans la cellule A6.A ListObject control named EmployeesListObject is created in cell A6. En même temps, un BindingSource nommé EmployeesBindingSource, un adaptateur de table et un DataSet instance sont ajoutés au projet.At the same time, a BindingSource named EmployeesBindingSource, a table adapter, and a DataSet instance are added to the project. Le contrôle est lié à la BindingSource, qui à son tour est lié à la DataSet instance.The control is bound to the BindingSource, which in turn is bound to the DataSet instance.

Pour ajouter un boutonTo add a button

  1. À partir de la contrôles communs onglet de la boîte à outils, ajouter un Button contrôle cellule A4 de la feuille de calcul.From the Common Controls tab of the Toolbox, add a Button control to cell A4 of the worksheet.

    L’étape suivante consiste à ajouter du texte au bouton lorsque la feuille de calcul s’ouvre.The next step is to add text to the button when the worksheet opens.

Initialisation du contrôleInitializing the Control

Ajouter du texte au bouton dans le Startup Gestionnaire d’événements.Add text to the button in the Startup event handler.

Pour initialiser le contrôleTo initialize the control

  1. Dans l’Explorateur de solutions, avec le bouton droit Sheet1.vb ou Sheet1.cs, puis cliquez sur afficher le Code dans le menu contextuel.In Solution Explorer, right-click Sheet1.vb or Sheet1.cs, and then click View Code on the shortcut menu.

  2. Ajoutez le code suivant à la Sheet1_Startup pour définir le texte de la button.Add the following code to the Sheet1_Startup method to set the text for the button.

    this.button1.Text = "Save";
    
    Me.Button1.Text = "Save"
    
  3. Pour c# uniquement, ajoutez un gestionnaire d’événements pour le Click événement à la Sheet1_Startup (méthode).For C# only, add an event handler for the Click event to the Sheet1_Startup method.

    this.button1.Click += new EventHandler(button1_Click);
    

    Maintenant ajouter du code pour gérer les Click événements du bouton.Now add code to handle the Click event of the button.

Enregistrement des modifications apportées à la base de donnéesSaving Changes to the Database

Des modifications ont été apportées pour les données existent uniquement dans le jeu de données local jusqu'à ce qu’elles sont enregistrées explicitement à la base de données.Any changes have been made to the data exist only in the local dataset until they are explicitly saved back to the database.

Pour enregistrer les modifications apportées à la base de donnéesTo save changes to the database

  1. Ajouter un gestionnaire d’événements pour le Click l’événement de la buttonet ajoutez le code suivant pour valider toutes les modifications qui ont été apportées dans le jeu de données à la base de données.Add an event handler for the Click event of the button, and add the following code to commit all changes that have been made in the dataset back to the database.

    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            this.employeesTableAdapter.Update(this.northwindDataSet.Employees);
        }
        catch (System.Data.DataException ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
    
    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        Try
            Me.EmployeesTableAdapter.Update(Me.NorthwindDataSet.Employees)
    
        Catch ex As System.Data.DataException
            MessageBox.Show(ex.Message)
        End Try
    End Sub
    

Test de l'applicationTesting the Application

Vous pouvez maintenant tester votre classeur pour vérifier que les données s’affiche comme prévu, et que vous pouvez manipuler les données dans l’objet de liste.Now you can test your workbook to verify that the data appears as expected, and that you can manipulate the data in the list object.

Pour tester la liaison de donnéesTo test the data binding

  • Appuyez sur F5.Press F5.

    Vérifiez que lorsque le classeur s’ouvre, l’objet de liste est remplie avec des données à partir de la employés table.Verify that when the workbook opens, the list object is filled with data from the Employees table.

Pour modifier des donnéesTo modify data

  1. Cliquez sur la cellule B7, qui doit contenir le nom Davolio.Click cell B7, which should contain the name Davolio.

  2. Tapez le nom Anderson, puis appuyez sur ENTRÉE.Type the name Anderson, and then press ENTER.

Pour modifier un en-tête de colonneTo modify a column header

  1. Cliquez sur la cellule qui contient l’en-tête de colonne LastName.Click the cell that contains the column header LastName.

  2. Type nom, y compris un espace entre les deux mots, puis appuyez sur ENTRÉE.Type Last Name, including a space between the two words, and then press ENTER.

Pour enregistrer des donnéesTo save data

  1. Cliquez sur enregistrer sur la feuille de calcul.Click Save on the worksheet.

  2. Quittez Excel.Exit Excel. Cliquez sur non lorsque vous êtes invité à enregistrer les modifications apportées.Click No when prompted to save the changes you made.

  3. Appuyez sur F5 pour exécuter de nouveau le projet.Press F5 to run the project again.

    L’objet de liste est remplie avec les données à partir de la employés table.The list object is filled with data from the Employees table.

  4. Notez que le nom dans la cellule B7 est toujours Anderson, qui correspond aux données de modification que vous effectuées et enregistrées dans la base de données.Notice that the name in cell B7 is still Anderson, which is the data change that you made and saved back to the database. L’en-tête de colonne LastName a changé sa forme d’origine sans espace, car l’en-tête de colonne n’est pas lié à la base de données et vous n’avez pas enregistré les modifications apportées à la feuille de calcul.The column header LastName has changed back to its original form with no space, because the column header is not bound to the database and you did not save the changes you made to the worksheet.

Pour ajouter de nouvelles lignesTo add new rows

  1. Sélectionnez une cellule à l’intérieur de l’objet de liste.Select a cell inside the list object.

    Une nouvelle ligne apparaît au bas de la liste, avec un astérisque (\) dans la première cellule de la nouvelle ligne.A new row appears at the bottom of the list, with an asterisk (****) in the first cell of the new row.

  2. Ajoutez les informations suivantes dans la ligne vide.Add the following information in the empty row.

    EmployeeIDEmployeeID LastNameLastName FirstNameFirstName TitreTitle
    1010 ItoIto ShuShu Responsable des ventesSales Manager

Pour supprimer des lignesTo delete rows

  • Cliquez sur le nombre 16 (ligne 16) sur le côté gauche de la feuille de calcul, puis cliquez sur supprimer.Right-click the number 16 (row 16) on the far left side of the worksheet, and then click Delete.

Pour trier les lignes dans la listeTo sort the rows in the List

  1. Sélectionnez une cellule dans la liste.Select a cell inside the list.

    Boutons fléchés apparaissent dans chaque en-tête de colonne.Arrow buttons appear in each column header.

  2. Cliquez sur la flèche dans le nom en-tête de colonne.Click the arrow button in the Last Name column header.

  3. Cliquez sur tri croissant.Click Sort Ascending.

    Les lignes sont triées par ordre alphabétique par nom.The rows are sorted alphabetically by last names.

Pour filtrer les informationsTo filter information

  1. Sélectionnez une cellule dans la liste.Select a cell inside the list.

  2. Cliquez sur la flèche dans le titre en-tête de colonne.Click the arrow button in the Title column header.

  3. Cliquez sur commercial.Click Sales Representative.

    La liste affiche uniquement les lignes qui ont représentant commercial dans les titre colonne.The list shows only those rows that have Sales Representative in the Title column.

  4. Cliquez sur la flèche dans le titre à nouveau les en-tête de colonne.Click the arrow button in the Title column header again.

  5. Cliquez sur (tous).Click (All).

    Le filtrage est supprimé et toutes les lignes apparaissent.Filtering is removed and all the rows appear.

Étapes suivantesNext Steps

Cette procédure pas à pas illustre les principes fondamentaux de la liaison d’une table dans une base de données à un objet de liste.This walkthrough shows the basics of binding a table in a database to a list object. Voici quelques tâches susceptibles de venir après :Here are some tasks that might come next:

Voir aussiSee Also

Liaison de données aux contrôles dans les Solutions Office Binding Data to Controls in Office Solutions
Données dans les Solutions Office Data in Office Solutions
Procédure pas à pas : liaison de données simple dans un projet au niveau du documentWalkthrough: Simple Data Binding in a Document-Level Project