Filtrer une DataGridView par des ComboBox

Signaler
Messages postés
5
Date d'inscription
mercredi 6 février 2019
Statut
Membre
Dernière intervention
12 février 2019
-
Messages postés
15908
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 mai 2021
-
Bonjour,
J'ai une Form avec 2 ComboBox et une DataGridView.
Je voudrait remplir le ComboBox1 avec les données d'une table Access " Tableau" colonne "Map" sans doublons et le ComboBox2 avec la même table et la colonne "Lieu" toujours sans doublons.
Puis je voudrais que ces deux ComboBox servent de filtres pour l'affichage des données dans le DataGridView.
J'ai parcouru pas mal de forum et trouvé pas mal de code différents mais étant débutant, je ne comprend rien à ces codes et je n'arrive à rien.
Merci d'avance pour votre aide.

4 réponses

Messages postés
15908
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 mai 2021
540
Bonjour

J'ai parcouru pas mal de forum et trouvé pas mal de code différents mais étant débutant, je ne comprend rien à ces codes et je n'arrive à rien.

Fort de ce constat, peut-être serait il judicieux de laisser ton projet de coté quelques jours et d'apprendre quelques bases?
Ce cours est bien (même si à mes yeux il a le défaut de prendre l'objet pour un effet de mode alors que c'est l'essence de .Net), il est accessible au débutant
http://plasserre.developpez.com/cours/vb-net/
Je te conseille de le faire de A à Z, même si tu trouves cela facile, car tu pourrais passer à coté d'un truc simple mais important.

Une fois fait, reviens et on parlera binding (liaison de données).
Messages postés
5
Date d'inscription
mercredi 6 février 2019
Statut
Membre
Dernière intervention
12 février 2019

Merci je vais regarder ça de près.
Messages postés
5
Date d'inscription
mercredi 6 février 2019
Statut
Membre
Dernière intervention
12 février 2019

Bonjour, donc après avoir planté mon projet trois fois, j'ai créé un projet test avec une table access Table1 contenant Colonne1, ... , Colonne4.
En passant par l'assistant, j'arrive à afficher les données de la table dans le DataGridView, les données triées et sans doublons de toute la colonne1 dans la combobox1 et de toute la colonne2 dans la combobox2 mais sans la fonction de filtre.
En passant par code j'arrive uniquement a créer la connexion à la base, je n'arrive pas à lier ni les combobox et ni le datagrid à la base de données.
Messages postés
15908
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 mai 2021
540
Bonsoir

peux tu poster le code?
Voir le lien ci après pour le rendre lisible sur le site https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Messages postés
5
Date d'inscription
mercredi 6 février 2019
Statut
Membre
Dernière intervention
12 février 2019

Voici le code pour la connexion

Imports System.Data
Imports System.Data.OleDb

Public Class Form1

    Dim Connection As String
    Dim Cn As OleDbConnection
    Dim da As OleDbDataAdapter
    Dim ds As New DataSet

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        Connection = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=C:\Users\Christophe\Desktop\Essai Codes\Database4.accdb"
        Cn = New OleDbConnection(Connection)
        Try
            Cn.Open()
            MsgBox("Connexion réussie ! ")

            Cn.Close()
        Catch ex As Exception
            MsgBox("Connexion échouée ! ")
        End Try
    End Sub

    
End Class
Messages postés
5
Date d'inscription
mercredi 6 février 2019
Statut
Membre
Dernière intervention
12 février 2019

Après je ne sais pas si je dois exécuter une requête Sql ou passer par l'évènement des Combobox
Messages postés
15908
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
5 mai 2021
540
Bonjour
Les bases de données ça n’est pas mon point fort, et je n’ai pas touché une base access depuis 11 ou 12 ans.
Cependant, il te faut choisr entre
  • le mode connecté: tu gardes un lien permanent avec la bdd, ainsi tu es au courrant des modifications faite sur la base pas un autre utilisateur
  • le mode déconnecté: au début tu charges toutes les données, ou ponctuellement tu charges le maximum de données utiles, et dans le programme tu travailles sur les collections.


Pour ce que j’en sais, Access gère mal les accès concurrents et interroger continuellement la bdd prend du temps (tout est relatif). Le mode déconnecté serait plus indiqué.