Bonjour,
J'ai une table [LivraisonsTemp] dans laquelle il y a un champ, [Réf commande] et je voudrais vérifier si la valeur existe dans ce champ et si oui, supprimer cet enregistrement pour me permettre de créer le nouvel enregistrement, ce champ est unique (ne peut y avoir 2 fois la même valeur)

Cette table est peuplée par un formulaire qui tire ses informations d'un autre formulaire [Détails commande2] en ce qui a trait au champ [Réf commande] pour être plus clair, lorsque je suis en train de créer une commande pour livraison, je suis sur le formulaire [Détails commande2], lorsque je clique un bouton commande sur ce dernier, le formulaire "Livraisons sommaire" s'ouvre avec le champ [CommandeEnCours] du formulaire [Détails commande2] dans son champ [Réf commande]
Maintenant, je choisis l'adresse de livraison et lorsque je presse le bouton accepter (sur le formulaire "Livraisons sommaire"), les informations choisies vont créer un enregistrement dans la table [LivraisonsTemp]

Si une erreur se produit et que je veux changer l'adresse de livraison pour cette commande, je voudrais que lorsque je presse le bouton accepter, mon code vérifie si cet enregistrement existe, s'il existe, le supprimer et placer la nouvelle adresse choisie dans la table.

J'ai essayé toutes sortes de combinaisons avec Dlookup et SQL, mais je n'arrive pas à effectuer ces étapes.

Voici le code sur mon formulaire "Livraisons sommaire":
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
34
35
36
Private Sub Form_Current()
Me.Réf_commande = Forms![Détails commande2].[CommandeEnCours]
End Sub
 
Private Sub LivraisonAccepter_Click()
Dim dbs As DAO.Database
Dim rst As DAO.Recordset
 
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("LivraisonsTemp", dbOpenDynaset)
 
        DoCmd.Echo False
        Forms![Détails commande2].[AdresseLivrée] = Me.Adresse
        Forms![Détails commande2].[AptLivrée] = Me.NoApt
        Forms![Détails commande2].[VilleLivrée] = Me.Ville
        Forms![Détails commande2].Requery
        DoCmd.Echo True
 
With rst
        .AddNew
        !Téléphone = Me.Téléphone
        !Adresse = Me.Adresse
        !NoApt = Me.NoApt
        !Ville = Me.Ville
        !Prénom = Me.Prénom
        !Nom = Me.Nom
        !CodeEntrée = Me.CodeEntrée
        !Notes = Me.Notes
        !Compagnie = Me.Compagnie
        ![Réf commande] = Forms![Détails commande2].[CommandeEnCours]
        .Update
End With
 
 
DoCmd.Close acForm, "Livraisons sommaire"
End Sub
Ce code fait exactement ce pourquoi il a été écrit, cependant, comme je l'expliquais précédemment, si une erreur se produit, je voudrais pouvoir changer les informations dans cette table pour la commande en cours.

Merci d'avance
Claude du Québec