ACCESS : Problème de débutant
Jonas31
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
OlivrT Messages postés 323 Date d'inscription Statut Membre Dernière intervention -
OlivrT Messages postés 323 Date d'inscription Statut Membre Dernière intervention -
Bonjour ou bonsoir plutôt,
Je me doute déjà avant de poser ma question qu'elle a déjà été traitée 'moulte' fois et que j'aurais pu utiliser la fonction 'recherche', cependant si je poste ici c'est que je ne comprends pas et n'arrive pas avec les solutions précédemment proposées.
Mon problème est simple mais je n'arrive pas à y répondre :
J'ai plusieurs tables dont :
Comptes avec pour champs : [CoID (numéro de compte), Cosolde(solde du compte), Cotype (type du compte)]
Transactions avec pour champs : [Tnum (numéro de transaction), Ttype (type de transaction, Tmontant, TDate, CoID*, Clnum*]
Clients [Clnum, Clnom, Clprenom, Clsecu, Cltel]
Je souhaite créer un formulaire qui affiche pour un client: son numéro, son nom et les transactions effectuées.
J'ai donc créer un formulaire avec les champs de la table clients voulus puis un sous-formulaire avec les champs de transactions...
Le tout marche très bien, cependant je souhaiterais rendre plus pratique le formulaire, et j'aimerais que lorsque je choisis mon numéro client dans une liste déroulante (que j'ai réussi à créer), les champs du nom et prénom (qui sont des zones textes) "s'actualisent", autrement dit qu'il corresponde à l'enregistrement (ligne) de la valeur choisie dans le menu déroulant.
Cette question semble anodine mais j'ai bien du mal à y répondre.
Je suis sous ACCESS 2007
Cordialement
Jonas
Je me doute déjà avant de poser ma question qu'elle a déjà été traitée 'moulte' fois et que j'aurais pu utiliser la fonction 'recherche', cependant si je poste ici c'est que je ne comprends pas et n'arrive pas avec les solutions précédemment proposées.
Mon problème est simple mais je n'arrive pas à y répondre :
J'ai plusieurs tables dont :
Comptes avec pour champs : [CoID (numéro de compte), Cosolde(solde du compte), Cotype (type du compte)]
Transactions avec pour champs : [Tnum (numéro de transaction), Ttype (type de transaction, Tmontant, TDate, CoID*, Clnum*]
Clients [Clnum, Clnom, Clprenom, Clsecu, Cltel]
Je souhaite créer un formulaire qui affiche pour un client: son numéro, son nom et les transactions effectuées.
J'ai donc créer un formulaire avec les champs de la table clients voulus puis un sous-formulaire avec les champs de transactions...
Le tout marche très bien, cependant je souhaiterais rendre plus pratique le formulaire, et j'aimerais que lorsque je choisis mon numéro client dans une liste déroulante (que j'ai réussi à créer), les champs du nom et prénom (qui sont des zones textes) "s'actualisent", autrement dit qu'il corresponde à l'enregistrement (ligne) de la valeur choisie dans le menu déroulant.
Cette question semble anodine mais j'ai bien du mal à y répondre.
Je suis sous ACCESS 2007
Cordialement
Jonas
A voir également:
- ACCESS : Problème de débutant
- Acer quick access - Forum Logiciels
- Access appdata - Guide
- Exemple base de données access à télécharger gratuit - Forum Access
- Exemple base de données Access de gestion ✓ - Forum Logiciels
- Quick acces ✓ - Forum Windows
1 réponse
en effet c'est quelque chose de simple à faire mais pas facile à décrire dans le cadre du forum.
1) Vous devez coder dans l'évènement Click de votre liste le code qui ira rechercher les coordonnées du client
Private Sub cboVotreListe_Click()
on error goto Err_
dim db as dao.database
dim rs as dao.recordset
set db = currentdb
set rs = db.openrecordset("SELECT NOM, PRENOM FROM CLIENTS WHERE NUMCLI = " & cboVotreListe.value , dbOpenDynaset)
if rs.recordcount = 1 Then
txtNomClient = rs!Nom
txtPrenomClient = rs!Prenom
End If
rs.Close
set db = nothing
exit_:
exit sub
err_:
msgbox err.description
err.clear
resume exit_
End Sub
Voilà, ça m'a prit moins d'une minute, mais si vous voulez répondre à l'avenir à ce genre de question, vous devez faire du vba, encore, encore et encore. Access est justement un outil formidable pour ce genre de développement rapide.
1) Vous devez coder dans l'évènement Click de votre liste le code qui ira rechercher les coordonnées du client
Private Sub cboVotreListe_Click()
on error goto Err_
dim db as dao.database
dim rs as dao.recordset
set db = currentdb
set rs = db.openrecordset("SELECT NOM, PRENOM FROM CLIENTS WHERE NUMCLI = " & cboVotreListe.value , dbOpenDynaset)
if rs.recordcount = 1 Then
txtNomClient = rs!Nom
txtPrenomClient = rs!Prenom
End If
rs.Close
set db = nothing
exit_:
exit sub
err_:
msgbox err.description
err.clear
resume exit_
End Sub
Voilà, ça m'a prit moins d'une minute, mais si vous voulez répondre à l'avenir à ce genre de question, vous devez faire du vba, encore, encore et encore. Access est justement un outil formidable pour ce genre de développement rapide.