SUPER URGENT! Pb pour afficher resultat requete ACCESS dans VB

Messages postés
31
Date d'inscription
vendredi 19 juillet 2002
Statut
Membre
Dernière intervention
25 novembre 2003
-
Messages postés
31
Date d'inscription
vendredi 19 juillet 2002
Statut
Membre
Dernière intervention
25 novembre 2003
-
Je viens de faire une base de donnees ACCESS qui contient des noms de programme. Je passe maintenant a l etape de VB.
J ai un combo box(liste deroulante)qui s appele progname et qui doit afficher tous les noms de mes prog (PROG_NAME dans ma base de donnee ACCESS), j ai réussi en faisant :

Private Sub Form_Load()
Dim MaBase As Database
Dim MaTable As Recordset

Set MaBase = DBEngine.Workspaces(0).OpenDatabase("CUSTODATA (full)97.mdb")

Set MaTable = MaBase.OpenRecordset("Select prog_name from Program")

Do While MaTable.EOF = False
progname.AddItem MaTable!prog_name
MaTable.MoveNext
Loop
End Sub

Maintenant je dois afficher la description du prog (PROG_DESCRIP dans ma base de donnee) dans un TextBox(nom du textbox : progdescrip) en fonction du nom de prog que je choisit dans le combobox. J ai essaye de faire ceci en faisant :

Private Sub progname_Change()
Dim var As String
Dim MaBase As Database
Dim MaTable As Recordset
Set MaBase = DBEngine.Workspaces(0).OpenDatabase("CUSTODATA (full)97.mdb")var "select prog_descrip from program where prog_name" + progname

Set MaTable = MaBase.OpenRecordset(var)
progdescrip(0).Text = var
progdescrip(0).Refresh
End Sub

quand je lance mon appli il me fait une erreur :
"Run-time error '3061' : Too few parameters. Expected 1."
Je ne comprends pas comment faire, je pars peut etre dans une fausse direction en faisant ca.
Le probleme viendrait t il de mon code, ou alors que je me sers d un simple data?

Il faut ensuite que j' affiche le type du prog dans un listbox nomme progtype(0) toujours en fonction du prog choisit dans le combox. La methode est t elle identique à celle pour le textbox vu qu il ne s agit plus ici d un textbox mais d un listbox??? et meme question pour un checkbox nomme progcusto qui affiche avec une croix si le prog est customise ou non????
Toutes ces infos sont bien sur dans la meme table nommée PROGRAM

Desole mais j ai encore une autre question, je dois afficher aussi dans un listbox( prevprogname(0) ) les noms de prog precedent (PREV_PROG_NAME dans ma base de donnée) sachant que ce champs se trouve dans une autre table(PREVIOUS) que celle du nom du prog qui est choisit dans le combobox. (La relation dans ma base de données ACCESS entre les tables se fait par la cle primaire de la table PROGRAM (PROG_NAME) et les 2 clés primaire de la table PREVIOUS (PREV_PROG_NAME et PROG_NAME).
Bon je suis sure qu il ne s agit pas d une erreur dans ma base de donées car celle ci tourne parfaitement avec des formulaire dans ACCESS, l erreur vient donc de mon code ou du data que j utilise.
Bon desole pour ces questions longues mais j ai VRAIMENT BESOIN D AIDE car je bloque depuis 3 jours dessus (j ai cherché des infos sur des bouquins, sur les forums, mais j ai rien trouvé!).
Je vous remiercie d avance et attend au plus vite et avec impatience vos réponses! Merci encore

Laurent

6 réponses

Messages postés
360
Date d'inscription
vendredi 24 août 2001
Statut
Membre
Dernière intervention
9 juillet 2008
3
Pour la première question, ca vient de ton codage SQL
Correction:
var "select prog_descrip from program where prog_name '" & progname & "'"

Pour la 2è, j'ai pas trop le temps de m'y pencher pour l'instant , je verrais tout à l'heure.

==============
Site Web de JDPROG
Présentation de MP3 Index

http://jdprog.fr.st
Messages postés
31
Date d'inscription
vendredi 19 juillet 2002
Statut
Membre
Dernière intervention
25 novembre 2003

Merci pour la réponse, ca ne me fait plus d erreur mais rien ne s affiche dans le textbox de la descrip du prog (PROG_DESCRIP).
J attends vos réponses, merci!

Laurent
Messages postés
31
Date d'inscription
vendredi 19 juillet 2002
Statut
Membre
Dernière intervention
25 novembre 2003

Merci pour la réponse, ca ne me fait plus d erreur mais rien ne s affiche dans le textbox de la descrip du prog (PROG_DESCRIP). Je fais pourtant comme cela :
Private Sub progname_Change()
Dim var As String
Dim MaBase As Database
Dim MaTable As Recordset

Set MaBase = DBEngine.Workspaces(0).OpenDatabase("CUSTODATA (full)97.mdb")
var "select prog_descrip from program where prog_name '" & progname & "'"
Set MaTable = MaBase.OpenRecordset(var)
progdescrip(0).Text = var
progdescrip(0).Refresh

End Sub
J attends vos réponses, merci!

Laurent
Messages postés
360
Date d'inscription
vendredi 24 août 2001
Statut
Membre
Dernière intervention
9 juillet 2008
3
Exact, j'ai mal lu la suite de ton code :
progdescrip(0).Text var.Fields("prog_descrip").Value
Site Web de JDPROG
Présentation de MP3 Index

http://jdprog.fr.st
Messages postés
360
Date d'inscription
vendredi 24 août 2001
Statut
Membre
Dernière intervention
9 juillet 2008
3
Arg!!! Je lag!! C'est pas var.Fields... mais MaTable.Fields...

==============
Site Web de JDPROG
Présentation de MP3 Index

http://jdprog.fr.st
Messages postés
31
Date d'inscription
vendredi 19 juillet 2002
Statut
Membre
Dernière intervention
25 novembre 2003

Désolé mais ca ne m affiche toujours rien meme apres le changement, donc en faisant comme tu m as dis :
Private Sub progname_Change()
Dim var As String
Dim MaBase As Database
Dim MaTable As Recordset
Set MaBase = DBEngine.Workspaces(0).OpenDatabase("CUSTODATA (full)97.mdb")var "select prog_descrip from program where prog_name '" & progname & "'"
Set MaTable = MaBase.OpenRecordset(var)
progdescrip(0).Text = MaTable.Fields("prog_descrip").Value
progdescrip(0).Refresh
End Sub

Ca ne marche toujours pas avec ce code.