Erreur d'execution (OpenRecordSet) - VB/VBA/VBS - Programmation
Marsh Posté le 18-04-2003 à 15:18:01
Même si l'erreur se produit sur cette ligne là, il y 90% de chances qu'elle trouve son origine dans la ligne précédente où tu construis ta requête. L'as-tu testée dans Access? A première vue, je n'y vois pas d'erreur.
Je note pour ceux qui me suivent que ce code exploite le moteur DAO.
Marsh Posté le 18-04-2003 à 15:23:59
affiche ta requête SQL.
A priori, cette erreur est liée à une erreur dans la requête, même si à première vue je vois pas trop où est l'erreur.
id contient quoi ?
Marsh Posté le 21-04-2003 à 17:46:09
Comme l'a souligné drasche, tu utilise DAO. A ta place j'obterais pour ADO (c'est le mieux). Peut-être que le problème vient de là.
Marsh Posté le 22-04-2003 à 22:34:02
essaie de remplacer dbOpenSnapshot par dbOpenRecordset.
normalement, ça devrait régler le problème (mais ça devrait marcher quand même comme tu l'as mis !!).
Marsh Posté le 18-04-2003 à 14:49:48
bonjour a tous,
m'étant mis depuis peu au vb, j'ai un probleme a l'execution d'une de mes fonctions.
je vous mets les bouts de code:
Function coutCompo(id As String) As Double
requete = "select * from composant where code_com='" & id & "';"
Set rec2 = bd.OpenRecordset(requete, dbOpenSnapshot)
If (rec2.Fields("prix" ) <= 0) Then
Dim val As Double
val = 0
requete2 = "select code_com_2, [quantité] from est_compose_1 where code_com_1='" & id & "';"
Set rec3 = bd.OpenRecordset(requete2, dbOpenSnapshot) <--------------- l'éditeur me dit que l'erreur est ici
Do While Not rec3.EOF
val = val + coutCompo(rec.Fields("code_com_2" ))
rec.MoveNext
Loop
coutCompo = val
Exit Function
End If
End Function
libellé de l'erreur: erreur 3061: trop peu de parametres, 1 attendu.
sachant qu'une des lignes du dessus est quasiment pareille que celle ou l'erreur se produit, je vois pas trop.