Bonjour a tous,
Voila j'ai deja posté pour une aide sur access et maintenant que tout marche parfaitement, j'ai un probleme pour un affichage dans mon datagrid.
Je peux afficher les données de ma table dans mon datagrid au chargement du formulaire, mais quand j'utilise un textbox pour faire un affichage precis, j'ai a chaque fois des erreurs.
Chargement du formulaire (tout fonctionne) :
_______
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim cnn As New OleDbConnection 'Connexion à la base de données Dim cmd As New OleDbCommand 'Commande requête Dim drr As OleDbDataReader 'Jeu d'enregistrements Dim existenreg As Boolean 'Connexion à la base de données annuaire sous ACCESS cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\archivesCD.mdb" cnn.Open() 'Requête SQL cmd.CommandText = "SELECT * FROM Archivage" cmd.Connection = cnn 'Exécution de la requête et récupération du résultat sous forme d'un jeu d'enregistrements dans drr drr = cmd.ExecuteReader() GrdArchive.ColumnCount = 6 GrdArchive.Rows.Clear() existenreg = drr.Read 'Lecture du premier enregistrement While existenreg 'Parcours des enregistrements GrdArchive.Rows.Add(drr("ID"), drr("NumAffaire"), drr("Année"), drr("Client"), drr("NumCd"), drr("Observations")) 'Ajout de l'enregistrement dans le DataGridView existenreg = drr.Read 'Lecture de l'enregistrement suivant End While drr.Close() cnn.Close() End Sub
Afficher le n° d'affaire tapé dans le textbox prevu a cet effet :
____
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Private Sub BtnAff_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAff.Click Dim cnn As New OleDbConnection 'Connexion à la base de données Dim cmd As New OleDbCommand 'Commande requête Dim drr As OleDbDataReader 'Jeu d'enregistrements Dim existenreg As Boolean 'Connexion à la base de données annuaire sous ACCESS cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\archivesCD.mdb" cnn.Open() 'Requête SQL cmd.CommandText = "SELECT * FROM Archivage WHERE NumAffaire=" & TxtAff.Text & "'" cmd.Connection = cnn 'Exécution de la requête et récupération du résultat sous forme d'un jeu d'enregistrements dans drr drr = cmd.ExecuteReader() GrdArchive.ColumnCount = 6 existenreg = drr.Read 'Lecture du premier enregistrement While existenreg 'Parcours des enregistrements GrdArchive.Rows.Add(drr("NumAffaire"), drr("Année"), drr("Client"), drr("NumCd"), drr("Observations")) 'Ajout de l'enregistrement dans le DataGridView existenreg = drr.Read 'Lecture de l'enregistrement suivant End While drr.Close() cnn.Close()
la j'ai une erreur, j'ai fait un screen :
et j'ai a peu pres la meme erreur si je veux un n° de cd precis, une année precise, un client precis.
Je sens que sa vient de mon SELECT, mais je ne sais pas quoi tenter. Si vous avez une idée, je prends
Merci.
Partager