Filtrer Datagriview VB.Net Avec datetimepicker + Textbox

Fermé
pépéyoni Messages postés 29 Date d'inscription vendredi 10 mai 2013 Statut Membre Dernière intervention 10 décembre 2022 - Modifié le 9 déc. 2022 à 13:58
Whismeril Messages postés 19032 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 28 avril 2024 - 10 déc. 2022 à 17:30

Bonjour chers tous,

Ca fait 2 semaine que je galère sur une probleme, Jai cherché mais aucune reponse.

En effet, J'ai un DatagridView que je filtre date des vente entre 2 datetimepicker (DateDebut et DateFin). Tout marche bien. Seulement, j'ai prevus plusieurs utilisateurs dans mon application et voudrais en plus du filtre entre 2 dates, filtrer l'utilisateur. Je me demande est ce qu'il est possible de faire un filtre de ce genre!!! J'ai cherche mais jai pas trouvé de réponse aussi.

Je vous met mon code pour filtrer entre 2 dates : 

Sub Afficher_Vente()
' Filtre DGV

Try
            If connection.State = ConnectionState.Closed Then
                connection.Open()

            End If

            Dim Dtdate1 As DateTime = DateTime.Parse(Dtp1.Text)
            Dim Dtdate2 As DateTime = DateTime.Parse(Dtp2.Text)

            Dim Cmd5 As New OleDbCommand("select NSV,REfP,Produits,Qté,PrixUnitaire,Total,DateV,Catégorie,Fournisseur,Emetteur from TVente where DateV between #" & Dtdate1.ToString("MM/dd/yyyy") & " # and # " & Dtdate2.ToString("MM/dd/yyyy") & "# order by DateV desc ", connection)

            Dim da As New OleDbDataAdapter With {
                .SelectCommand = Cmd5
            }
            Dim Dt As New DataTable
            Dt.Clear()
            da.Fill(Dt)
            DataGridView3.DataSource = Dt
            DataGridView3.Columns(6).DefaultCellStyle.Format = "dd/MM/yyyy"

            connection.Close()

        Catch ex As Exception

        End Try

End Sub

Merci d'avance de votre Aide

PS: J'étais sur VBA et la je débute sur VB.NET


Windows / Chrome 108.0.0.0

A voir également:

5 réponses

Whismeril Messages postés 19032 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 28 avril 2024 931
9 déc. 2022 à 13:58

Bonjour

tout d'abord, pour poster un code, merci de faire comme décrit là https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code

Ensuite un datetimepicker retourne directement un datetime, y'a rien à parser.

Enfin, pour être bien sûr, ton titre, c'est "filtrer un datagridview" or là tu fais une requête sur la base de données, tu ne filtres pas le datagridview.

Ton besoin c'est de conserver cette requête et de faire un filtre ensuite, ou de faire une requête qui appliquera le filtre que tu veux?


0
pépéyoni Messages postés 29 Date d'inscription vendredi 10 mai 2013 Statut Membre Dernière intervention 10 décembre 2022
10 déc. 2022 à 09:59

Bonjour Whismeril

Desolé, je ferais attention à l’avenir pour la publication de code et les suggestion sur mon code! Pour la publication de code, C’est vrai ce sera plus lisible ! Merci d’avoir attiré mon attention.

Oui! Comme le titre, mon souhait c’est de filtrer  le datagriview. ( filtrer par date via 2 daterimepicker et filtrer l’utilisateur dont le nom est dans un textbox.)

Comment conserver cela et faire un filtre ? J’ai cherché mais je trouve pas. 

Sur VBA, je filtrais dans les listbox par date et par user ou autres critères! 

Ps: j’étais sur VBA et je suis passé sur Vb.net depuis peu.

Merci! 

0
Whismeril Messages postés 19032 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 28 avril 2024 931
10 déc. 2022 à 11:56

Une solution qui serait disons 100% vb.net, est

  • d'écrire une classe qui correspond aux champs de la bdd dont tu as besoin
  • de charger toute ta table dans une liste (ou autre collection) de cette classe.
  • de binder ton datagridview via un bindingsource
  • d'utiliser les fonctions de filtre du bindingsource.

Un exemple ici https://codes-sources.commentcamarche.net/faq/1291-utilisation-du-binding-au-travers-de-l-objet-databindingsource

Par contre, ce n'est pas forcément accessible aux débutants. Il faut peut-être commencer par apprendre les bases https://tahe.developpez.com/dotnet/vbnet/


0
pépéyoni Messages postés 29 Date d'inscription vendredi 10 mai 2013 Statut Membre Dernière intervention 10 décembre 2022
10 déc. 2022 à 14:50

Bonjour Whismeril

Un grand Super Merci pour ton aide. Je vu les  liens!!!! Je vais me pencher dessus sérieusement. Merci encore.

Je te reviens dès que c'est fait.

Grand MERCI encore et très bon weekend.!!!!!

0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Whismeril Messages postés 19032 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 28 avril 2024 931
10 déc. 2022 à 17:30

De rien


0