Menu

Effacer certains enregistrements d'une base de données [Résolu]

Zonteo 30 Messages postés lundi 18 décembre 2017Date d'inscription 14 mars 2018 Dernière intervention - 9 janv. 2018 à 23:00 - Dernière réponse : Zonteo 30 Messages postés lundi 18 décembre 2017Date d'inscription 14 mars 2018 Dernière intervention
- 14 janv. 2018 à 02:25
Bonjour,
J'ai une table qui contient plusieurs enregistrements et je veux effacer seulement certains.
Alors je recherche le code VBA qui peut m'aider dans ce sens.
Exemple ma table a les champs suivants
[ETT1]
[AEM1]
[DICTEE1]
[MATH1]
Ensuite
[ETT2]
[AEM2]
[DICTEE2]
[MATH2]
puis
[ETT3]
[AEM3]
[DICTEE3]
[MATH3]
je veux effacer seulement que les enregistrements de
[ETT2]
[AEM2]
[DICTEE2]
[MATH2]
Tout en espérant ne pas trop vous en demander je vous prie de bien vouloir recevoir toute ma gratitude.

"Celui qui demande apprend beaucoup."
Afficher la suite 

Votre réponse

5 réponses

yg_be 6032 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 juillet 2018 Dernière intervention - 12 janv. 2018 à 04:27
0
Merci
bonjour, tu écris que tu veux effacer des enregistrements.
cependant, j'ai l'impression que les noms que tu donnes sont des noms de champs, ce qui donne l'impression que tu veux effacer des champs, et pas des enregistrements.
peux-tu clarifier?
si tu veux effacer des champs, veux-tu les effacer dans tous les enregistrements, ou seulement dans une partie des enregistrements?
peux-tu aussi expliquer pourquoi tu souhaites faire cela via un code VBA, plutôt que par une requête?
Zonteo 30 Messages postés lundi 18 décembre 2017Date d'inscription 14 mars 2018 Dernière intervention - 12 janv. 2018 à 08:52
Bonjour Monsieur.
Effectivement ce sont des noms des champs. Mais je veux effacer les enregistrements contenus dans ces champs et pas les champs.
Je m'excuse d'avoir mal posé mon problème.
Je vous avais envoyé ma base. Dans cette base il y a 4 evaluations. (EVA1,EVA2, EB1 et EB2)
Je veux avoir la possibilité d'effacer par exemple les enregistrements (les notes) de EVA2 uniquement sans que les autres ne le soient.
Les champs de l'EVA2 sont donc
[ETT2]
[AEM2]
[DICT2]
[MATH2].
Je veux effacer les notes ou enregistrements qui sont dans ces champs.
Alors si possible par la requête alors je voudrais savoir comment?
Vous remerciant d'avance je vous réitère mes excuses et vous prie de recevoir tous mes remerciements pour toutes les aides que j'ai reçues de vous et de tous les autres membres de commentçamarche .
yg_be 6032 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 juillet 2018 Dernière intervention > Zonteo 30 Messages postés lundi 18 décembre 2017Date d'inscription 14 mars 2018 Dernière intervention - 12 janv. 2018 à 23:33
moi j'appelle "enregistrement" une ligne de la table. je dirais que tu veux effacer le contenu de certains champs.
je suggère alors ceci, si tu veux effacer des champs dans tous les enregistrements de la table:
UPDATE T_EVA1 SET ETT2 = Null, AEM2 = Null, DICT2=Null, MATH2 =Null;
Zonteo 30 Messages postés lundi 18 décembre 2017Date d'inscription 14 mars 2018 Dernière intervention > yg_be 6032 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 juillet 2018 Dernière intervention - 14 janv. 2018 à 01:35
Bonsoir.
Au fait c'est ça. Je voulais effacé le contenu de certains champs. Avec le code que vous m'aviez envoyé je peux effacer le contenu (les notes) des champs de l'évaluation 2 si je veux sans effacer ceux des autres et vice versa ou ainsi de suite.
Merci beaucoup ça marche comme d'habitude.
Aucun problème ne reste sans solution avec vous.
Aussi j'ai simplement remplacé dans ce code null par 0 pour que les zero s'affichent en lieu et place du vide et c'est parfait.
J'ai créé un nouveau Compte Gmail pour recevoir uniquement les courriers et reponses de commentcamarche.
Merci encore.
Bonne nuit.
Zonteo 30 Messages postés lundi 18 décembre 2017Date d'inscription 14 mars 2018 Dernière intervention > yg_be 6032 Messages postés lundi 9 juin 2008Date d'inscriptionContributeurStatut 21 juillet 2018 Dernière intervention - 14 janv. 2018 à 02:25
Bonsoir.
Une precision.
Quand j'utilise seul ce code
UPDATE T_EVA1 SET ETT2 = Null, AEM2 = Null, DICT2=Null, MATH2 =Null;
Je reçois cette boite de dialogue:"Erreur de compilation: Attendu:Fin d'instruction"
Puis SET est sélectionné en bleu.
Alors j'ai adapté ce code à ceci pour que ça fonctionne.
J'ai fais:
DoCmd.RunSql "UPDATE T_EVA1 SET ETT2 = Null, AEM2 = Null, DICT2=Null, MATH2 =Null;"
Et ça marche à merveille quand bien même j'ai remplacé Null par 0.
Merci beaucoup une fois de plus.
Commenter la réponse de yg_be