Bonjour,
naturellement vous ne pouvez pas placer un champ à une valeur si elle contient déjà une formule pour le calcul. Dans ce cas-ci elle doit être un champ vide et non lié. Et car ce n'est pas un champ sauvé vous pouvez employer le code ci-dessus dans l'évènement actuel de forme qui se produit sur n'importe quel changement record de la forme principale.
En outre, ce code ne fonctionnera pas si vous n'avez pas au moins trois disques dans votre subform.
1. enlever
= [subform de qryRandomSalesPersonNext]. Forme ! EmpID
du txtRandom
2. copier ce code dans votre forme principale :
Form_Current secondaire privé ()
Faibles rs comme DAO.Recordset
Placer les rs = je. [subform de qryRandomSalesPersonNext]. Form.RecordsetClone
rs.MoveFirst
Si Me.txt aléatoire = Me.FIRSTOwner alors
rs.MoveNext
Si Me.txt aléatoire = Me.SECONDOwner alors
rs.MoveNext
Finir si
Finir si
Sinon (rs.EOF ou rs.BOF) puis
Me.txt aléatoire = rs. Champs (« EmpID »)
Finir si
Placer les rs = rien
Finir le sous-marin
alors il devrait fonctionner.
À la votre,
Chrétien