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":
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.
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
Merci d'avance
Claude du Québec
Partager