Bonjour a tous,
J'ai constitué une base de donnée des outils d'une entreprise, elle fonctionne mais une action prend beaucoup de temps, aussi je cherche à l’améliorer.
J'ai une liste déroulante qui doit absolument être vide lorsque l’opérateur ouvre un certain formulaire or celle ci mémorise la valeur entrée. De manière à supprimer cette valeur, j'ai fait un petit VBA qui efface tout le champ dans la table qui la sauvegarde, cependant le temps de parcourir toutes les lignes est très long. Je vous met le code à la suite:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Set oRst = oDb.OpenRecordset("T2-Références", dbOpenTable) While Not oRst.EOF 'Passe en mode modification oRst.Edit 'Efface la valeur oRst.Fields("Pos1").Value = Null 'Met à Jour oRst.Update 'Passe au suivant oRst.MoveNext Wend
T2-Références est la table dans laquelle est inscrit le champ pos1 que je dois effacer.
Dans notre cas je n'aurai qu'une seule ligne à effacer a chaque fois que l’opérateur fait son choix dans la liste déroulante.
Cependant je ne sais pas comment faire un code pour lui dire d'aller spécifiquement effacer la cellule pos1 correspondant à la ligne qui vient d’être changée.
Quelqu'un à une idée ?
Partager