Erreur 3061 [Résolu]

cams56 5 Messages postés lundi 29 juin 2009Date d'inscription 1 juillet 2009 Dernière intervention - 29 juin 2009 à 10:23 - Dernière réponse : cams56 5 Messages postés lundi 29 juin 2009Date d'inscription 1 juillet 2009 Dernière intervention
- 1 juil. 2009 à 17:51
Bonjour à tous!Je fais appel a vous car j'ai besoin d'aide. Dans le cadre de mon stage, je dois réaliser plusieurs macro en VBA/Access. Lors de l'éxecution, un message d'erreur apparait: erreur 3061-Trop peu de parametres-5 attendus. voici le script avec la ligne en rouge et gras qui est celle que VB me surligne lors du débogage! Merci d'avance.

Public Function ExportExcel(NomFeuille, NomRequete)


'On Error GoTo Erreur


    Dim Db As DAO.Database
    Dim Rs As DAO.Recordset
    Dim fldCount As Integer
    Dim iCol As Integer
    Dim iRow As Integer
   
    Set Db = CurrentDb
    Set Rs = Db.OpenRecordset(NomRequete)
   
    Set XlSheet = XlBook.Worksheets(NomFeuille)
    XlSheet.Cells.Clear
   
    fldCount = Rs.Fields.Count
    For iCol = 1 To fldCount
        XlSheet.Cells(1, iCol).Value = Rs.Fields(iCol - 1).Name
    Next
   
    XlSheet.Range("A2").CopyFromRecordset Rs
   
    Rs.Close
    Set Rs = Nothing
   


'Exit_Erreur:
'
'    Exit Function
'
'Erreur:
'
'    Call Gestion_Erreur(Err.Number, Err.Description, "M_Import_Export", "ExportExcel", "")
'    Resume Exit_Erreur


End Function
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 29 juin 2009 à 19:27
3
Merci
Re
Manque de précision :
Oui, je me doute bien que c'est une requète, mais de quel type ?
Peux-tu nous donner un exemple du texte contenu dans ta variable NomRequete ?
A t-elle cet aspect :
   Select * From maTable Where toto = 3
ou s'agit-il du nom d'une requète stockée dans ta base ?
Si tel est le cas, il faudra nous donner la syntaxe de cette requète : Elle semble nécessiter des paramètres et ce sera à toi de les fournir.
Voir aussi dans l'aide de DAO si on s'adresse à une requete stockée avec un RecordSet ou autre (QueryDef) - pas trop d'expérience la dedans

Merci cs_Jack 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de cs_Jack
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 29 juin 2009 à 14:07
0
Merci
Salut
Modification de la catégorie de la question .Net --> VBA

Le texte de l'erreur est pourtant clair : Il manque des paramètres.
Quand tu écris ta commande en rouge, lorsque tu écris entre les parenthèses, normalement, tu devrais voir apparaitre en ToolTipText la liste des paramètres nécessaires.

D'autre part, il me semble que DAO est obsolète (*) et qu'il vaut mieux utiliser ADODB.
(*) fonctionne encore, mais n'est plus mis à jour, donc de futurs problèmes de compatibilité en vue.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Commenter la réponse de cs_Jack
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 29 juin 2009 à 14:17
0
Merci
Non, il ne manque pas de paramètres puisque les suivants sont optionnels.
Regarde dans l'aide de DAO pour savoir comment s'utilise OpenRecordset.
Que repésente NomRequete, que contient cette chaine  ?
Est-ce une requète ou le nom d'une table contenue dans cette chaine, ou bien le nom d'une requète stockée (QueryDef) ?
Si c'est une requète stockée, nécessite t-elle des paramètres (Parameter) ?

L'aide DAO 3.60 est assez complète.
Commenter la réponse de cs_Jack
cams56 5 Messages postés lundi 29 juin 2009Date d'inscription 1 juillet 2009 Dernière intervention - 29 juin 2009 à 16:36
0
Merci
Merci pour votre réponse, alors, NomRequete est effectivement une requete. La fonction ExportExcel permet d'exporter dans une feuille Excel les requete Access en incluant dans la fonction le nom de la feuille et de la requete a exporter. Et concernant DAO, j'avoue ne pas savoir pourquoi on utilise ca dans ce cas, je suis en stage de fin d'étude et j'ai repris un travail fais comme ca.
Commenter la réponse de cams56
cams56 5 Messages postés lundi 29 juin 2009Date d'inscription 1 juillet 2009 Dernière intervention - 30 juin 2009 à 09:25
0
Merci
Merci beaucoup, en fait, tu m'as mit sur la voie, quand j'ai modifié certaines requete, j'ai oublié de modifier une requete union, les parametres manquants étaient donc dans celle-ci. Je n'y avait pas pensé, je croyais les avoir toutes vérifiées. Merci beaucoup
Commenter la réponse de cams56
cams56 5 Messages postés lundi 29 juin 2009Date d'inscription 1 juillet 2009 Dernière intervention - 30 juin 2009 à 09:28
0
Merci
Comment on fait pour déclarer que ce post est résolu?
Commenter la réponse de cams56
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 30 juin 2009 à 12:40
0
Merci
Bonne nouvelle !
On clique sur le bouton "Réponse acceptée" sous le pseudo de ton sauveteur, lol
Commenter la réponse de cs_Jack
cams56 5 Messages postés lundi 29 juin 2009Date d'inscription 1 juillet 2009 Dernière intervention - 1 juil. 2009 à 17:51
0
Merci
lol.Ok, merci, c'était ma première utilisation d'un forum!
Commenter la réponse de cams56

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.