Partager via


Procédure pas à pas : liaison de données simple dans un projet au niveau du document

Cette procédure pas à pas présente les notions de base relatives à la liaison de données dans un projet au niveau du document. Un champ de données unique d'une base de données SQL Server est lié à une plage nommée de Microsoft Office Excel. La procédure pas à pas indique également comment ajouter des contrôles permettant de faire défiler tous les enregistrements de la table.

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

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

  • Création d'une source de données pour un projet Excel

  • Ajout de contrôles à une feuille de calcul

  • Défilement des enregistrements d'une base de données

Notes

Il est possible que votre ordinateur affiche des noms ou des emplacements différents pour certains des éléments d'interface utilisateur de 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

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).
  • Excel 2007 ou Excel 2010.

  • 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

Création d'un projet

Dans cette étape, vous allez créer un projet de classeur Excel.

Pour créer un projet

Visual Studio ouvre le nouveau classeur Excel dans le concepteur et ajoute le projet My Simple Data Binding à l'Explorateur de solutions.

Création de la source de données

Utilisez la fenêtre Sources de données pour ajouter un groupe de données typé à votre projet.

Pour créer la source de données

  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.

    Notes

    Si Afficher les sources de données n'est pas disponible, cliquez à l'intérieur du classeur 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 à l'exemple de base de données SQL Server Northwind ou ajoutez une nouvelle connexion à l'aide du bouton Nouvelle connexion.

  5. Après avoir sélectionné ou créé une connexion, 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 Customers.

  9. Cliquez sur Terminer.

L'Assistant ajoute la table Customers à la fenêtre Sources de données. Un groupe de données typé est également ajouté à votre projet, visible dans l'Explorateur de solutions.

Ajout de contrôles à la feuille de calcul

Pour cette procédure pas à pas, vous avez besoin de deux plages nommées et de quatre boutons sur la première feuille de calcul. Commencez par ajouter les deux plages nommées de la fenêtre Sources de données afin qu'elles soient automatiquement liées à la source de données. Ensuite, ajoutez les boutons de la Boîte à outils.

Pour ajouter deux plages nommées

  1. Vérifiez que le classeur My Simple Data Binding.xls est ouvert dans le concepteur Visual Studio et que Sheet1 est affiché.

  2. Ouvrez la fenêtre Sources de données et développez le nœud Customers.

  3. Sélectionnez la colonne CompanyName, puis cliquez sur la flèche de déroulement qui apparaît.

  4. Sélectionnez NamedRange dans la liste déroulante, puis faites glisser la colonne CompanyName jusqu'à la cellule A1.

    Un contrôle NamedRange nommé companyNameNamedRange est créé dans la cellule A1. En même temps, un BindingSource nommé customersBindingSource, 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. Sélectionnez la colonne CustomerID dans la fenêtre Sources de données, puis cliquez sur la flèche de déroulement qui apparaît.

  6. Cliquez sur NamedRange dans la liste déroulante, puis faites glisser la colonne CustomerID jusqu'à la cellule B1.

  7. Un autre contrôle NamedRange nommé customerIDNamedRange est créé dans la cellule B1 et lié à la BindingSource.

Pour ajouter quatre boutons

  1. À partir de l'onglet Contrôles communs de la Boîte à outils, ajoutez un contrôle Button à la cellule A3 de la feuille de calcul.

    Ce bouton est nommé Button1.

  2. Ajoutez, dans cet ordre, trois boutons supplémentaires aux cellules suivantes afin que les noms soient comme indiqué :

    Cellule

    (Name)

    B3

    Button2

    C3

    Button3

    D3

    Button4

L'étape suivante consiste à ajouter du texte aux boutons et à ajouter des gestionnaires d'événements en C#.

Initialisation des contrôles

Définissez le texte du bouton et ajoutez des gestionnaires d'événements pendant l'événement Startup.

Pour initialiser les contrôles

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

  2. Ajoutez le code suivant à la méthode Sheet1_Startup afin de définir le texte pour chaque bouton.

    With Me
        .Button1.Text = "|<"
        .Button2.Text = "<"
        .Button3.Text = ">"
        .Button4.Text = ">|"
    End With
    
    this.button1.Text = "|<";
    this.button2.Text = "<";
    this.button3.Text = ">";
    this.button4.Text = ">|";
    
  3. Pour C# uniquement, ajoutez des gestionnaires d'événements pour les événements Click de bouton à la méthode Sheet1_Startup.

    this.button1.Click += new EventHandler(button1_Click);
    this.button2.Click += new EventHandler(button2_Click);
    this.button3.Click += new EventHandler(button3_Click);
    this.button4.Click += new EventHandler(button4_Click);
    

Maintenant, ajoutez du code pour gérer les événements Click des boutons afin que l'utilisateur puisse parcourir les enregistrements.

Ajout de code pour pouvoir faire défiler les enregistrements

Ajoutez du code au gestionnaire d'événements Click de chaque bouton pour parcourir les enregistrements.

Pour vous déplacer jusqu'au premier enregistrement

  • Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button1 et ajoutez le code suivant afin de vous déplacer jusqu'au premier enregistrement :

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        Me.CustomersBindingSource.MoveFirst()
    End Sub
    
    private void button1_Click(object sender, System.EventArgs e)
    {
        this.customersBindingSource.MoveFirst();
    }
    

Pour revenir à l'enregistrement précédent

  • Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button2 et ajoutez le code suivant afin de revenir à la position précédente :

    Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button2.Click
    
        Me.CustomersBindingSource.MovePrevious()
    End Sub
    
    private void button2_Click(object sender, System.EventArgs e)
    {
        this.customersBindingSource.MovePrevious(); 
    }
    

Pour vous déplacer jusqu'à l'enregistrement suivant

  • Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button3 et ajoutez le code suivant afin de passer à la position suivante :

    Private Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button3.Click
    
        Me.CustomersBindingSource.MoveNext()
    End Sub
    
    private void button3_Click(object sender, System.EventArgs e)
    {
        this.customersBindingSource.MoveNext();
    }
    

Pour vous déplacer jusqu'au dernier enregistrement

  • Ajoutez un gestionnaire d'événements pour l'événement Click du bouton Button4 et ajoutez le code suivant afin de vous déplacer jusqu'au dernier enregistrement :

    Private Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button4.Click
    
        Me.CustomersBindingSource.MoveLast()
    End Sub
    
    private void button4_Click(object sender, System.EventArgs e)
    {
        this.customersBindingSource.MoveLast();
    }
    

Test de l'application

Vous pouvez maintenant tester votre classeur afin de vous assurer que vous pouvez parcourir les enregistrements de la base de données.

Pour tester votre classeur

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

  2. Vérifiez que le premier enregistrement apparaît dans les cellules A1 et B1.

  3. Cliquez sur le bouton > (Button3) et vérifiez que l'enregistrement suivant apparaît dans les cellules A1 et B1.

  4. Cliquez sur les autres boutons de défilement pour confirmer que l'enregistrement est modifié comme vous l'attendiez.

Étapes suivantes

Cette procédure pas à pas présente les notions de base permettant de lier une plage nommée à un champ dans une base de données. Vous devrez peut-être ensuite exécuter les opérations suivantes :

Voir aussi

Tâches

Procédure pas à pas : liaison de données complexe dans un projet au niveau du document

Autres ressources

Liaison de données aux contrôles dans les solutions Office

Données dans les solutions Office