Bonjour,
J'ai une base de données comprenant une table contact et une table telephones. Je veux pouvoir voir les téléphones ( car il peut y en avoir plusieurs) du contact choisi après une action de recherche.
Ce contact est choisi parmi d'autres dans une zone de liste. Je récupère donc son identifiant.
Je souhaite afficher ses téléphones dans un sous formulaire, où les lignes " numero_telephone" et "type_telephone" apparaitraient dynamiquement en fonction du besoin. Par exemple, si le contact a 5 telephones, 5 lignes de champs apparaitront. Pour cela j'utilise du code vb.
Voici mon code :
Avec ce code, je ne modifie malheureusement que le premier champ du sous-formulaire (logique ...).
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
24
25
26
27
28
29
30
31
32
33 Private Sub Resultat_Click() ' initialisation des variables utilisées Dim sql, sqlTel, sqlAdresse, sqlMail As String Dim resGen, resAd, resTel, resMail, res As Recordset ' creation des requetes utilisées sqlTel = "select numero_telephone, type_telephone, id_contact from Telephone where id_contact = " & Resultat.Value & ";" 'ouverture des recordset Set resTel = CurrentDb.OpenRecordset(sqlTel) ' manipulation sous-formulaire If resTel.RecordCount > 0 Then resTel.MoveFirst While Not resTel.EOF Me.form_telephones!numero_telephone.Value = resTel("numero_telephone") Me.form_telephones!type_telephone.Value = resTel("type_telephone") resTel.MoveNext Wend Me.form_telephones.Form.Requery Else Me.form_telephones!numero_telephone.Value = "" Me.form_telephones!type_telephone.Value = "" End If ' fermeture des recordset resTel.Close Set resTel = Nothing
Il faut savoir que j'utilise un sous-formulaire pour pouvoir ensuite gérer l'ajout, la modification ou la suppression d'un contact et donc de ses téléphones. Si quelqu'un a une idée pour traiter ce problème autrement, je suis preneuse.
Quelqu'un a t-il une idée ?
ps : si besoin de plus de code pour la compréhension, hésitez pas :p
Partager