Bonjour Loufab
J'ai jeter un petit coup d'oeil sur ta base avec les nouveaux ajouts j'ai remarqué une petite problématique ou la liste déroulante ne s'update pas après copier et supprimé.
Donc voici un petit fix rapide soit l'ajout de ceci à la fin des 2 procédure respective :
Form.LmRechercher.Requery
Procédure Supprimé
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Private Sub btnSupprimer_Click()
' suppression de l'enregistrement courant
On Error GoTo errSub
If MsgBox("Voulez-vous supprimer définitivement la fiche " & Form.Caption & " ?", _
vbYesNo + vbDefaultButton2, fVersionProduit()) = vbYes Then
If Form.NewRecord Then ' c'est un nouveau record on annule simplement
Form.Undo
Else
Form.Recordset.Delete ' on supprime
Form.LmRechercher.Requery 'Ce petit Ajout
End If
End If
Exit Sub
errSub:
' après suppression du dernier enregistrement
If Err.Number = 3021 Then btnCreer_Click
End Sub |
Procédure Copier
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| Private Sub btnCopierEnregistrement_Click()
' copier l'enregistrement courant
Dim rst As DAO.Recordset
Dim fld As DAO.Field
If Form.NewRecord And Not Form.Dirty Then Exit Sub 'pas de copie d'un enregistrement vide
btnEnregistrer_Click ' on enregistre
Set rst = Form.RecordsetClone
btnCreer_Click
Form.Recordset.AddNew
For Each fld In Form.Recordset.Fields
If Not fld.Attributes And dbAutoIncrField Then 'sauf NumeroAuto
fld.Value = rst.Fields(fld.Name)
End If
Next
Form.Recordset.Update
Form.LmRechercher.Requery 'Ce petit Ajout
btnEnregistrer_Click
End Sub |
Je vient de me rendre compte d'une autre problématique ....
lorsque l'on appuie sur copier, ca fonctionne mais ca copie le premier enregistrement du recordset et non pas celuil présentement a l'écran. j'essai de trouver une solution, mais si tu le trouve avant moi fait moi signe.
Partager