Aidez moi MERCI

tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005 - 30 mars 2004 à 11:51
cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009 - 31 mars 2004 à 15:45
J'ai déjà posé un message mais voilà je n'y arrive pas. je vous explique: j'ai 1 base de données access. J'ai 2 tables : Manager et vendeuses. Chaque manager a ses propres vendeuses. Bon. Maintenant allons sur visual basic 6.
J'aimerais dans une liste déroulante, choisir un manager et une fois sélectionné, j'aimerais que cela affiche toutes ses vendeuses dans une listbox ou autre (nom + prenom + N°).
Voilà comment faire? J'ai utilisé une data pour reconaitre la base de données.

Et là je bloque. Aidez moi. De plus, c'est pour mon entreprise.C'est 1 de mes projets.

Merci d'avance à tous....

anthonyrissouant508@hotmail.com (sur msn)

17 réponses

cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
30 mars 2004 à 12:16
salut

c'est tou simple

ej pense que les deux table sont liée avec l'id du manager. Alors quand tu sélectionne le manager tu fait une requete du genre
"SELECT * FROM manager m, vendeuses v WHERE m.id=v.idManager AND m.nom='"& var_nom_manager &"';"

var_nom_manager corespond a la selection de la liste déroulante.

et la tu recupére toutes les vendeuses du manager XXXX par rapport a son son

dans ce cas le nom de chaque manager doit être unique

ciao @++

krevette ;-)
0
mic56 Messages postés 1 Date d'inscription lundi 22 mars 2004 Statut Membre Dernière intervention 30 mars 2004
30 mars 2004 à 12:19
j'ai le meme probleme. j'ai bien mis mes clefs entre chaque table et pour des zones de textes les données s'affiche bien quand je sélectionne les enregistrements. mais je veux choisir par liste un nom et affiché les données correspondantes.

sinon pour ton application tu peut faire une zone de recherche ou tu tape le nom et tu aura les vendeuse associées.
ce type d'exemple est dans tous les bouquin sur les base de données et visual.

mais je pense qu'un menu déroulant est plus efficace et je n'arrive pas non plus
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
30 mars 2004 à 12:56
Ok et merci de m'avoir aidé. Je vais tester cela cet aprem au boulot.

Merci encore. Je vous dirais si cela à marché....

anthonyrissouant508@hotmail.com
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
30 mars 2004 à 14:41
Je viens de le tester et j'ai un probléme (pour changer).
Ds ma liste déroulante j'ai que le 1er manager qui s'affiche. alors faut il utiliser AddItems ? Moi je sé pa .
Et puis la requete je l'ai compri mais on l'a mé où ds le form load ou dans listebox_click() je ne sé pa non plus...

Merci

TonyWan
anthonyrissouant508@hotmail.com
0

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

Posez votre question
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
30 mars 2004 à 14:44
A oui j'oublié : toi tu utilise SQl (select bla bla...) alors que moi c'est plus du model DAO (recordset, etc......)

Il faut que ce petit prog soit opérationnel avant jeudi. Je stress.

je cherche de partout.....
anthonyrissouant508@hotmail.com
0
cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
30 mars 2004 à 15:21
ouais bah la requete tu la mets dans le form_load pour l'initilaisation des manager

un truc du genre
sql........
while not rs.eof
list.additems rs!manager
rs.movenext
wend

et pour a avoir les vendeuse c'est pareil mais dans se ca tu mais la requete dans le list_change ou list_clic c'est toi qui voit

voila

krevette ;-)
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
30 mars 2004 à 16:32
J'ai réussi a avoir la liste des managers et voilà mon code :

Private Sub Form_Load()

'déclaration de la base
Dim db3 As DAO.Database

'de la requete
Dim rq As DAO.Recordset

'initialisations de la base
Set db3 = OpenDatabase("C:\Gestion entreprise\E.D.C\Base de données\db1.mdb")

'de la requete qui sélectionne les noms des entités
Set rq = db3.OpenRecordset("select Nom from TManager")

'si des enegistrements correspondent à la requete alors
If rq.RecordCount > 0 Then
    'se placer sur le 1er enregistrement
    rq.MoveFirst
    
    'tant que ce n'est pas la fin des enregistrements
    Do While rq.EOF = False
    'ajouter au combo l'enregistrement en cours
    combo.AddItem rq!nom
    'passer à l'enregistrement suivant
    rq.MoveNext
    'refaire
    Loop
'sinon
Else
    combo.Text = "pas encore de rubriques enregistrées"
End If



là c'est ok, j'ai ma liste déroulante avec les noms des managers.

Maintenant quand j'en sélectionne un, je souhaite que la liste de ses vendeuses apparaissent dans une liste simple par exemple.
Et c'est là qu'intervient ta requete :

"SELECT * FROM manager m, vendeuses v WHERE m.id=v.idManager AND m.nom='"& var_nom_manager &"';"

Mais j'ai une erreur de syntaxe. De plus, quand je fais un additems avec la liste _vendeuse, j'ai encore une erreur de syntaxe.

On y est presque !!!! Un dernier coup de pouce .....

Merci
0
cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
31 mars 2004 à 10:19
donne les infos par rapport a ta base et aussi le code que tu a mis au niveau du clic dans la listebox et je donnerais les correction a apporté si je les trouve.

cioa @+

krevette ;-)
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
31 mars 2004 à 11:43
Voilà tout mon code. J'ai créer une simple frame avec 2 ComboBox uniquement pour faire des tests:
Combo1 et Combo2

Option Explicit
'déclaration de la base
Dim db3 As DAO.Database
'de la requete
Dim rq As DAO.Recordset
Dim rq2 As DAO.Recordset

Private Sub Form_Load()

'"""""""""""""""""""""""""""""""""""""""""""""""""""""
'affichage de la liste des managers dans une combobox "
'"""""""""""""""""""""""""""""""""""""""""""""""""""""

'initialisations de la base
Set db3 = OpenDatabase("C:\Gestion entreprise\E.D.C\Base de données\db1.mdb")
'de la requete qui sélectionne les noms des entités
Set rq = db3.OpenRecordset("select Nom, Prénom from TManager")

'si des enegistrements correspondent à la requete alors
If rq.RecordCount > 0 Then
    'se placer sur le 1er enregistrement
    rq.MoveFirst
    
    'tant que ce n'est pas la fin des enregistrements
    Do While rq.EOF = False
    'ajouter au combo l'enregistrement en cours
    combo.AddItem rq!nom
    'passer à l'enregistrement suivant
    rq.MoveNext
    'refaire
    Loop
'sinon
Else
    combo.Text = "Pas de Managers"
End If

'"""""""""""""""""""""""""""""""""""""""""""""""""""""
'affichage de la liste des vendeuses dans une combobox "
'"""""""""""""""""""""""""""""""""""""""""""""""""""""Set rq2 db4.OpenRecordset("select * from TPrésentateur(trice) t , TManager m where t.N°Manager m.N°Manager")
'COMMENT LUI DIRE D'AFFICHER LES PRESENTATRICES PAR RAPPORT AU MANAGER SELECTIONNE ??

If rq2.RecordCount > 0 Then
    rq2.MoveFirst
    
    Do While rq2.EOF = False
        combo2.AddItem rq2!nom
        rq2.MoveNext
    Loop
Else
    combo2.Text = "Pas de présentatrices"
End If

End Sub



Et voilà les infos de ma base de données sous access 97:

Base de données : db1.mdb

Table : TPrésentateur(trice)

Nom des champs : n°présentateur(trice)
Nom
Prénom
Etc……..
N°Manager

Table : TManager

Nom des champs : N°Manager
Nom
Prénom
Etc….

N.B. : Les tables sont reliées avec « N°Manager ».

Voilà et merci beaucoup de m'aider

anthonyrissouant508@hotmail.com
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
31 mars 2004 à 11:45
J'oubliais de préciser que la liste déroulante des managers fonctionne mais pas celle des présentatrices.

anthonyrissouant508@hotmail.com
0
cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
31 mars 2004 à 12:02
il suffit de mettre un clause WHERE
Set rq2 db4.OpenRecordset("select * from TPrésentateur(trice) t , TManager m where t.N°Manager m.N°Manager WHERE m.nom='" & LISTBOX.text & "';")

voila

krevette ;-)
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
31 mars 2004 à 13:09
Oki je vais l'essayer cette aprem.....

Merci à toi
Je te tiens au courant.
anthonyrissouant508@hotmail.com
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
31 mars 2004 à 14:41
J'ai un message d'erreur : "Syntax error in From clause"
a la place du 2éme where jé mi and. Jé essayé les 2 mais rien y fait.

anthonyrissouant508@hotmail.com
0
cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
31 mars 2004 à 14:46
oui bon fallait changer le deuxiéme where en AND
Set rq2 db4.OpenRecordset("select * from TPrésentateur(trice) t , TManager m where t.N°Manager m.N°Manager AND m.nom='" & LISTBOX.text & "';")
veirifie les majuscule des différents champs et sinon faits

debug.print "select * from TPrésentateur(trice) t , TManager m where t.N°Manager = m.N°Manager AND m.nom='" & LISTBOX.text & "';"

(le debug.print s'affiche dans la fenetre d'execution de vb, il faut donc la mettre visibe)

comme ca te permetra de voir la requete que tu execute et de voir s'il y a des erreurs.

voila

krevette ;-)
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
31 mars 2004 à 14:49
C'est bon !! Le problème cété les parentheses() de présentatrices. Jé rajouté des crochets [].

Et bé.....

Merci pour tou krevette :-)
anthonyrissouant508@hotmail.com
0
tonywan Messages postés 34 Date d'inscription mercredi 28 janvier 2004 Statut Membre Dernière intervention 24 mars 2005
31 mars 2004 à 15:16
J'ai parlé trop vite. J'ai un autre probleme de syntaxe

Set rq2 db3.OpenRecordset("select * from [TPrésentateur(trice)] t , TManager m where m.N°Manager t.N°Manager and m.Nom='" & combo.Text & "'")



voilà le message d'erreur :

Syntax error in query expression 'm.N°Manager = t.N°Manager and m.Nom='

J'ai eesayé de mettre des crochets, mais ça ne fait rien....

anthonyrissouant508@hotmail.com
0
cs_krevette Messages postés 137 Date d'inscription lundi 14 octobre 2002 Statut Membre Dernière intervention 21 janvier 2009
31 mars 2004 à 15:45
mets un point virgule a la fin

renome ta table TPrésentateur(trice) en TPresentateur sans accent sans parenthése ca evitera les problème. sinon je ne vois pas.

voila

krevette ;-)
0
Rejoignez-nous