Affichage Datagrid2 selon Datagrid1

Résolu
cs_Sandy084 Messages postés 53 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 14 juin 2006 - 30 mai 2005 à 11:03
cs_Sandy084 Messages postés 53 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 14 juin 2006 - 31 mai 2005 à 21:47
Bonjour!
Je vais essayer d'etrte la plus claire possible... J'ai un Datagrid1, et selon la ligne sur laquelle je clique je remplis differement le Datagrid2. Jusque la ca fonctionne si je selectionne une ligne, mais impossible d'en selectionner une autre sans relancer l'application.
Voici mon code:

Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
DataGrid2.Visible = True
Label1.Visible = True
Index = DataGrid1.Columns(0).Value


Rst2.CursorLocation = adUseClient ' Sinon le jeu d'enregistrement ne peut pas prendre ne compte les signets
Rst2.Open "Select distinct Produit.Libéllé_produit, Produit.Prix_unitaire, Produit.Taille, LigneCommande.Quantité_commandé FROM Produit, LigneCommande, Commande WHERE Produit.Code_produit=LigneCommande.Code_produit AND LigneCommande.Code_commande like '" & Index & "'", Cxn, , adLockOptimistic
Set DataGrid2.DataSource = Rst2
End Sub

Il faudrais vider le Datagrid2 au début je pense, mais comment faire??
Set DataGrid2.DataSource = " "
Ca ne marche pas!!

J'espére que vous saurez m'aider, en attendant je vous remercie.

6 réponses

cs_Sandy084 Messages postés 53 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 14 juin 2006
31 mai 2005 à 21:47
Ca y'est j'ai trouvé!!
Grace à commentcamarche.net , y'a pas mal de trucs d'ailleurs.
Il me manquait
Set Rst2 = Nothing
et je n'ai pas mis Rst2.Close.
Voila voili!
3
Totoroyamada Messages postés 31 Date d'inscription jeudi 26 mai 2005 Statut Membre Dernière intervention 17 novembre 2005
30 mai 2005 à 11:14
De tête (parce que ça fait un paquet de temps que je ne fais plus de vb6) :

Essaie Set DataGrid2.Datasource = Nothing
0
cs_Sandy084 Messages postés 53 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 14 juin 2006
30 mai 2005 à 11:43
Ca fait comme avant, c'est à dire ca marche au premier coup, et aprés quand on change de ligne ce met erreur 3705 cette opération n'est pas autorisée si l'objet est ouvert.
Vous savez comment y remédier??
0
cs_pcvesoul Messages postés 123 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 25 juillet 2007 1
30 mai 2005 à 12:11
essaie : DataGrid2.rows = 1
0

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

Posez votre question
Totoroyamada Messages postés 31 Date d'inscription jeudi 26 mai 2005 Statut Membre Dernière intervention 17 novembre 2005
30 mai 2005 à 14:50
Bon, j'ai été rouvrir un vieux projet vb6, j'avoue que je ne m'en serai jamais souvenu sinon...

Rst2.Close 'sûrement ce qu'il te manque, c'est le recordset qui est déjà ouvert et non le datagrid

Rst2.Open "la nouvelle requête"

Rst2.Requery

Par contre, c'est un conseil qu'on retrouve souvent ici et pour cause,
évite les accents et autres caractères ésotériques dans ton code, tes
noms de table, de champs etc...

En espérant t'avoir aidé...
0
cs_Sandy084 Messages postés 53 Date d'inscription mardi 11 janvier 2005 Statut Membre Dernière intervention 14 juin 2006
31 mai 2005 à 18:47
Salut !
Mais si je met Rst2.Close en premier ca ne marche pas (erreur 3704 operation non autorisée si l'objet est fermé), et si il est à la fin ca ne m'affiche rien.

Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
DataGrid2.Visible = True
Label1.Visible = True
Index = DataGrid1.Columns(0).Value


Rst2.Close
Set DataGrid2.DataSource = Nothing
Rst2.CursorLocation = adUseClient ' Sinon le jeu d'enregistrement ne peut pas prendre ne compte les signets
Rst2.Open "Select distinct Produit.Libéllé_produit, Produit.Prix_unitaire, Produit.Taille, LigneCommande.Quantité_commandé FROM Produit, LigneCommande, Commande WHERE Produit.Code_produit=LigneCommande.Code_produit AND LigneCommande.Code_commande like '" & Index & "'", Cxn, , adLockOptimistic
Rst2.Requery
Set DataGrid2.DataSource = Rst2
Rst2.Close
End Sub

On est pas loin du but...J'espére que tu as une idée.
Merci
0
Rejoignez-nous