J'essaye d'écrire une fonction pour faire une boucle dans les enregistrements dans un sous-formulaire continu et effacer la valeur dans un champ spécifique (Entity_Under_Consideration, qui est un champ de recherche représenté par une combobox sur le sous-formulaire) pour chaque enregistrement.Accès VBA: Modification d'un RecordSet dans un sous-formulaire continu
Ce qui suit ne fonctionne pas. Il ne jette pas d'erreurs non plus. Quelqu'un peut-il voir où je vais mal?
Public Function clearEUCData(subform As Control)
'take a clone of the subform's recordset
Dim entityRecSet As Recordset
Set entityRecSet = subform.Form.Recordset.Clone()
'if there are any records in the subform...
If entityRecSet.RecordCount > 0 Then
'start with the first record
entityRecSet.MoveFirst
'iterate through each row, clearing the data in the EUC field
Do Until entityRecSet.EOF
With entityRecSet
.Edit
Entity_Under_Consideration = 0
.Update
End With
entityRecSet.MoveNext
Loop
End If
'close and purge the cloned recordset
entityRecSet.Close
Set entityRecSet = Nothing
End Function
Vous ne semblent pas être rafraîchir la forme après mise à jour du recordset cloné recordset? – Minty
Et pourtant, les modifications sont toujours appliquées au jeu d'enregistrements du formulaire. Comment cela se passe-t-il? – DrewCraven
Gnomes d'accès Ninja travaillant en arrière-plan? Souvent, les mises à jour des jeux d'enregistrements apparaissent immédiatement, mais pas toujours ... Cela dépend si c'est une table locale ou comment une table liée est connectée. – Minty