Bonjour à tous !
Ma toute première contribution sur un forum de développement, j'espère ne pas faire trop d'erreurs, soyez indulgents.
J'ai un besoin particulier sous Access 2007. J'aimerais automatiser un traitement dans ma base de données que je dois faire tourner régulièrement. Au sein de ce traitement, j'ai une requête Append que je souhaite lancer et relancer jusqu'à ce qu'elle n'ajoute plus aucun enregistrement à ma table avant de passer à la suite du traitement.
Quand j'effectue le traitement à la main, c'est facile, il me suffit d'avoir les avertissements activés et d'attendre d'avoir le message : "Vous allez ajouter 0 enregistrements à la table LIENS_PF" ; mais comment récupérer le "0" de ce message en VBA après avoir lancé la requête ?
Pour des raisons de performances, je souhaiterais ne pas avoir à lancer l'équivalent de ma requête Append en sélection pour calculer à priori le nombre d'enregistrements (je sais, je suis un peu pénible...).
Merci d'avance pour vos réponses !
PS : un petit laius sur le traitement peu orthodoxe que j'effectue (lancer et relancer une requête Append jusqu'à ce que la table source ne soit plus modifiée). En fait, j'exporte de MSProject une liste de tâches avec des liens de prédécesseurs / successeurs. J'aimerais avoir pour toutes les tâches, une table qui contient l'ensemble des successeurs ou des prédécesseurs de la tâche (en prenant en compte la transitivité, c'est à dire que le prédécesseur du prédécesseur de ma tâche est également un prédécesseur de ma tâche). Pour cela, j'ai ma table LIENS_PF (champs PRED, SUCC) que je croise avec elle même ; et j'appende directement à cette table les enregistrements calculés qui n'y étaient pas déjà. Cela permet de "propager" les liens. Quand il n'y a plus rien à propager, je peux arrêter le traitement.
Partager