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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| Private Sub lstClients_DblClick(Cancel As Integer)
' Le double clic sur un client de la liste permet de modifier sa fiche
Dim rs As recordset
Dim SQL As String
Dim ctrl As Control
' Ouverture d'un RecordSet permettant de récupérer toutes les propriétés d'un client donné et de les
' afficher dans les champs correspondants du formulaire "frmFicheClient"
SQL = "SELECT * FROM Client WHERE NumCl = " & Me.lstClients & ";"
Set rs = CurrentDb.OpenRecordset(SQL, dbOpenForwardOnly, dbReadOnly)
' Ouverture de la fiche Client et initialisation de la variable indiquant que l'on se trouve ici
' dans le cadre d'une modification de la fiche
DoCmd.OpenForm "frmFicheClient"
With Forms![frmFicheClient]
.modifCl = True
.numClient = Me.lstClients
End With
' Remplissage des champs de la fiche, affichage du bouton "Modifier" (désactivé tant qu'aucune saisie n'a été faite dans les
' champs de la fiche Client), désactivation du bouton
' "Ajouter" qui est alors masqué puisqu'il est inutile pour la modification
For Each ctrl In Forms![frmFicheClient].Controls
Select Case ctrl.Name
Case "txtNomClient"
ctrl.Value = rs.Fields("NomCl").Value
Case "txtPrenomClient"
ctrl.Value = rs.Fields("PrenomCl").Value
ctrl.Enabled = False
Case "txtDateNaissClient"
ctrl.Value = rs.Fields("DateNaissCl").Value
ctrl.Enabled = False
Case "txtAdresseClient"
ctrl.Value = rs.Fields("AdresseCl").Value
Case "txtCPClient"
ctrl.Value = rs.Fields("CPCl").Value
Case "txtVilleClient"
ctrl.Value = rs.Fields("VilleCl").Value
Case "txtTelClient"
ctrl.Value = rs.Fields("TelCl").Value
Case "txtDateInscClient"
ctrl.Value = rs.Fields("DateInscCl").Value
ctrl.Enabled = False
Case "txtDateRadClient"
ctrl.Value = rs.Fields("DateRadCl").Value
Case "txtMotifRadClient"
ctrl.Value = rs.Fields("MotifRadCl").Value
Case "cmdAjoutClient"
ctrl.Enabled = False
ctrl.Visible = False
Case "cmdModifClient"
ctrl.Enabled = False
ctrl.Visible = True
End Select
Next ctrl
rs.Close
End Sub |
Partager