Bonjour,
Je crois bien que nous avons atteint la limite de la combinaison de ces trois outils dans le cas où le critère est du texte. Il y a un problème au niveau de l'interpretateur VBA je pense
Parce que
1 - si tu enregistres la requête sous MAJDevisLigne et tu lances cette requête avec un
Docmd.OpenQuery MAJDevisLigne
dans VBA, ça marche.
2 - Soit il faudrait re écrire le DSUM en une syntaxe SQL comme étant sous-requête. Et refaire exécuter la totalité du syntaxe en VBA. Soyons humble, n'étant pas un grand spécialiste de ce genre de choses, je laisse le soin à d'autres membres qui pourront peut-être nous donner une solution de cette façon.
3 - Moi, je te propose un petit code VBA-fonction ACCESS qui fait la même chose :
1 2 3 4 5 6 7 8 9 10 11 12 13
| Dim rstDevis As DAO.Recordset
Set rstDevis = CurrentDb.OpenRecordset("DevisLigne")
With rstDevis
.MoveFirst
Do While Not .EOF
.Edit
![Temps Réel] = Nz(DSum("[Heure (1)]", "[MO]", "[Tache 1]='" & ![Libelle] & "'"), 0)
.Update
.MoveNext
Loop
End With
rstDevis.Close
Set rstDevis = Nothing |
@+
Partager