Erreur 3265 "Élement non trouvé dans cette collection"

Anonyme
2023-07-29T11:35:07+00:00

Bonjour

Dans ce code, à ligne en gras et rouge, j'ai l'erreur 3265 "Élément non trouvé dans cette collection" alors qu'il y a bien quelque chose.

La requête est juste ci-dessous.

SELECT Sum(t_travaux.proj_pourcentage) AS SommeDeproj_pourcentage
FROM t_Personnel INNER JOIN t_travaux ON t_Personnel.pers_Id = t_travaux.pers_id
WHERE (((t_Personnel.pers_Id)=[id]));

Merci d'avance pour vos idées !.

Function Pourcentage(param As Long)
Dim db As Object
Dim qdef As Object
Dim rs As Object
Set db = CurrentDb
Set qdef = db.QueryDefs("r_pourcentage")
'Assigner le paramètre à la requête
qdef.Parameters("id").Value = param
'Stocker le résultat de la requête dans un recordset
Set rs = qdef.OpenRecordset()
If Not rs.EOF Then
Debug.Print rs.Fields(0).Value 'Ou faire autre chose avec les résultats
Else
Debug.Print "Aucun résultat trouvé"
End If
'Nettoyage
rs.Close
Set rs = Nothing
Set qdef = Nothing
Set db = Nothing
End Function

Microsoft 365 et Office | Access | Autres | Autres

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire
Réponse acceptée par l’auteur de la question
Anonyme
2023-07-29T14:43:36+00:00

Bonsoir à toute et tous,

Voilà, c'était bien un problème de syntaxe. J'ai fait toute ma carrière avec DAO & ADO qui sont maintenant obsolètes

Tout bêtement qdef!id = param

Option Compare Database
Option Explicit

Function Pourcentage(param As Long)
    Dim db As Object
    Dim qdef As Object
    Dim rs As Object
    Set db = CurrentDb
    Set qdef = db.QueryDefs("r_pourcentage")
    ' Définir le paramètre
    qdef!id = param
    'Stocker le résultat de la requête dans un recordset
    Set rs = qdef.OpenRecordset()
    If Not rs.EOF Then
        Debug.Print rs.Fields(0).Value 'Ou faire autre chose avec les résultats
    Else
        Debug.Print "Aucun résultat trouvé"
    End If
    'Nettoyage
    rs.Close
    Set rs = Nothing
    Set qdef = Nothing
    Set db = Nothing
End Function

Problème résolu, merci à un modo qui passe par ici de la marquer comme réponse

Cette réponse a-t-elle été utile ?

0 commentaires Aucun commentaire

12 réponses supplémentaires

  1. Anonyme
    2023-07-29T15:47:09+00:00

    Très bien, s’il vous plaît laissez-nous savoir au cas où il y a autre chose. Nous sommes toujours là pour vous aider! Merci!

    Cette réponse a été traduite automatiquement. Par conséquent, il peut y avoir des erreurs grammaticales ou des expressions étranges.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2023-07-29T15:34:42+00:00

    Je n'ai plus le temps maintenant, mais j'étais actif dans les forums Google dans les années 80. Le changement vers cette interface-ci à d'ailleurs découragé plus d'un intervenant qualifié ...

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Anonyme
    2023-07-29T15:24:39+00:00

    Salut Blaise032,

    Puis-je savoir s’il y a autre chose que je peux vous aider?

    Sinceres salutations

    Lion

    Cette réponse a été traduite automatiquement. Par conséquent, il peut y avoir des erreurs grammaticales ou des expressions étranges.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Anonyme
    2023-07-29T14:49:02+00:00

    Merci de nous avoir mis à jour, Blaise032! S’il vous plaît laissez-nous savoir si vous avez besoin d’aide supplémentaire à l’avenir.

    Cette réponse a été traduite automatiquement. Par conséquent, il peut y avoir des erreurs grammaticales ou des expressions étranges.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire