Suppression d'enregistrements

Résolu
leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -  
leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

par le biais d'un code Vba que j'ai créé, je peux supprimer des enregistrements dans une table. Tout se passe bien si ce n'est que lorsque je vérifie ma table, à la place des champs de l'enregistrement supprimé apparaît "#supprimé"


et voici mon code :

         Set enregistrement = CurrentDb.OpenRecordset("SELECT * FROM T_Budget_Charges") ' WHERE Intitule_Charge = [Intitule]")
         While Not enregistrement.EOF
            If enregistrement![Intitule_Charge] = [Choix_Charge] Then
                enregistrement.Delete
            End If
            enregistrement.MoveNext
         Wend


Quelle peut en être la raison ? Suis je trop pressé ! ou dois faire une mise à jour avant de vérifier ?
Merci et bonne journée


Configuration: Windows / Chrome 74.0.3729.169
A voir également:

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, j'imagine que la table était affichée avant que la suppression ait eu lieu. je pense qu'il suffit de rafraîchir l'affichage.
ne serait-ce pas plus simple de faire une requête sql "delete"?
strSQL = "Delete * FROM T_Budget_Charges WHERE Intitule_Charge= '" + [Choix_Charge] + "' "
DoCmd.RunSQL strSQL
0
leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Merci, mais avec la requête SQL "DELETE" le problème est toujours le même.
Je crois en effet qu'il faut terminer ce code en rafraîchissant la table et par la même occasion la liste déroulante.
mais comment la rafraîchir ? question bête et ridicule, mais je bloque ....
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
la table était-elle affichée avant que la suppression ait eu lieu? par quoi est-elle affichée?
0
leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
voici la situation :
1) ma table est remplie à partir d'un formulaire de création
2) mais évidemment cette table est évolutive : on doit pouvoir modifier ou supprimer des enregistrements. j'ai donc créé un autre formulaire contenant une liste déroulante "Choix_Gharge" qui récupère les enregistrements de la table et en particulier le Champ "Intitule_Charge".
A partir du choix réalisé avec la liste déroulante je modifie ou supprime ainsi un ou plusieurs champs de la table. Pour supprimer j'utilise le code précédent.
Comme je le disais tout fonctionne si ce n'est qu'après une suppression je n'arrive pas à supprimer de façon définitive l'enregistrement concerné.
C'est tellement vrai que si je désire supprimer un deuxième enregistrement le précédent, que je viens de supprimer, est toujours présent dans ma liste bien que dans la table ses champs contiennent le fameux "#supprimé".
En ce qui concerne votre question : "la table était-elle affichée avant que la suppression ait eu lieu? par quoi est-elle affichée?" , je ne cherche pas à afficher la table ni avant, ni après la suppression. C'était par simple curiosité que je me suis aperçu du problème en ouvrant "manuellement" la table.
J'espère avoir été assez clair et vous remercie d'avoir accepté de vous intéresser à ma question
Bonne soirée
Jacques
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
je pense que l'enregistrement est totalement supprimé, malgré les apparences.
0
leaemileemma Messages postés 38 Date d'inscription   Statut Membre Dernière intervention  
 
Je l'espère
Merci et bonne soirée
0