IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

Erreur d'exécution 3001: Argument non valide


Sujet :

VBA Access

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut Erreur d'exécution 3001: Argument non valide
    Bonjour,
    J'essaye d'ouvrir ma base access au travail, mais il me met "Erreur 3001 Argument non valide "
    Voilà le rapport du débogage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Option Compare Database
     
    Sub calcouvré()
     
     
    CurrentDb.Execute "DELETE * FROM Table_jours_chaumés_temp"
     
    DoCmd.OpenQuery "Requête_MAJ_calcrel"         <== (elle est surligné en jaune avec une fleche jaune a sa gauche)
     
    End Sub

    A noté que je suis que technicien, mon collegue qui a crée la base est en vacance

    Merci de votre aide

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Salut,

    Je ne connais pas l'étendu de tes connaissances sous Access, mais il faut que tu nous donnes quelques détail supplémentaire :
    -Quand se produit cette erreur (à l'ouverture d'Access, ou bien d'un formulaire, ou autre...)
    -Où est définie la variable "Requête_MAJ_calcrel" (Il doit y avoir quelque part dans le code (plus ou moins loin) un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Requête_MAJ_calcrel = "SELECT ... FROM ... [WHERE]..."

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Je ne suis qu'un simple utilisateur
    Alors, cette érreur se produit à l'ouverture d'access et je ne vois pas de variable qui définnisse Requête_MAJ_calcrel ??
    Il y a plein de modules mais pas a ce nom ? je suis perdu là

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Ben c'est de la que viens le problème : La ligne
    DoCmd.OpenQuery "Requête_MAJ_calcrel"
    exécute une requête SQL, qui est en théorie stockée dans "Requête_MAJ_calcrel". Si cette variable n'est pas définie au préalable, ca plante.

    Si tu ne sais pas du tout ce qu'elle est cencé faire, je te recommande de la mettre en commentaire (tu met un "quote" [ ' ] devant la ligne, et tu appuie sur F5 pour continuer l'execution. Si d'autre problèmes surviennent, tu n'aura d'autre possibilité que de comprendre le code et le faire marcher.... ou bien ne pas te servir de cette appli...

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Le quote n'a pa fonctionner il me met le même message d'erreur.
    Merci quand même!

  6. #6
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Et bien, coupe la ligne et colle la dans un fichier texte (pour ne pas la perdre). Ensuite, sauve et relance l'application...

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    J'avai oublier de préciser quelque chose, lorsque je lançais access il me méttai débogage et quand je fermais le débogueur il m'affichai une fenêtre avec: - Nom de la macro: "AutoExec
    - Condition: "Vrai"
    - Nom de l'action: ExecuterCode
    - Arguments: "firstep ()"

    Et lorsque je coupe la ligne, il me repporte vers un autre probleme qui est dans le module "__START__"

    Code :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Function firststep() <== Surligné en jaune
     
    testoutlook
     
    NouvelleBarreOutils
     
    DesacFermeture
     
    DoCmd.ShowToolbar "Base de données", acToolbarNo
    DoCmd.ShowToolbar "Barre de menus", acToolbarNo
     
     
     
     
     
    'MsgBox Cipn & vbNewLine & Csite & vbNewLine & Ctech & vbNewLine & Cinitial & vbNewLine & Ccolour & vbNewLine & RepertoireModeles & vbNewLine & Repertoirelex & vbNewLine & repetoirehp
     
    persositetech
     
    NouvelleBarreOutils
     
    calcouvré
     
    creerdate
     
    DoCmd.OpenForm "suivi_incident"
    DoCmd.OpenForm "F_date_heure"
    DoCmd.OpenForm "F_recherche"
    DoCmd.OpenForm "F_rechercher"
     
    End Function

    ps: comment tu fais pour mettre les codes dans le "rectangle" sur le forum?

  8. #8
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Ben, là, je doute que l'on puisse t'aider. Tu es face à une application entière, et on ne sais même pas ce qu'elle est censé faire...

    La macro Autoexec est une procédure qui se lance lors du démarrage d'une application Access... Dans ton cas, elle appelle la fonction firststep, qui elle-même appelle les fonctions testoutlook, NouvelleBarreOutils, DesacFermeture.

    On peut t'aider sur un problème précis, mais pas à débugger une application dont on a aucune connaissance...

    Tout ce que je peut te dire, c'est que dans une des procédure suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    testoutlook
    NouvelleBarreOutils
    DesacFermeture
    persositetech
    NouvelleBarreOutils
    il y a un code qui initialise la requete dont on parlais tout à l'heure, et que c'est cette requete qui pose problème pour le moment.... peut-être que si tu trouve cette requete, on pourra t'aider...

    PS : pour mettre le code source au format code, soit tu l'entour de balise [ CODE ] et [ /CODE ], soit tu séléctionne ton texte et tu appuie sur l'icône # de la barre de format.

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Merci,
    le probleme justement c'est que je ne sais ou se trouve ces applications ou requetes
    je vais chercher et te tiens informé mais je doute pouvoir les trouvé.

  10. #10
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 913
    Points
    55 913
    Billets dans le blog
    131
    Par défaut
    Bonjour

    Essaie de lancer la requête Requête_MAJ_calcrel directement via Access. Tu vas probablement avoir une demande de paramètres et tu pourras peut-être mieux comprendre ce qui est requis...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  11. #11
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Je ne vois pas comment l'ouvrir vu que je ne sais ou elle se trouve ? c possible?

  12. #12
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 153
    Points : 161
    Points
    161
    Par défaut
    Ce qu'il propose (et c'est vrai que je n'y ai pas pensé -_-), c'est que la requête Requête_MAJ_calcrel soit construite avec l'éditeur.

    Lorsque tu ouvre ton application, le tableau de bord de l'appli te permet d'accéder aux tables, formulaires, requêtes, état et macro définies. Dans l'onglet requete, chercher Requête_MAJ_calcrel...

  13. #13
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Le tableau de bord d'access ou bien du débogage? Dans le debogueur, je vois bien différentes tables et formulaires mais pas de requetes, et quand j'ouvre la base access je n'ai acces a rien.

  14. #14
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 913
    Points
    55 913
    Billets dans le blog
    131
    Par défaut
    Lorsque tu ouvres Access, presse sur F11 pour avoir accès à la fenêtre de base de données.

    Si rien ne s'affiche, tu peux aussi démarrer la base en maintenant la touche MAJ (SHIFT) enfoncée lorsque tu doublecliques sur l'icône.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  15. #15
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Merci c'est ça qui me manquait en fait je vais voir ca j'ai mon collègue au telephone.

    Aperement il ne peut résoudre le probleme a distance. j'ai réussi a ré-ouvrir la base, mais rien n'y fonctionne. je peus également désormais accéder en mode création. la requete maj_calcrel ne s'ouvre pas "argument non valide".

  16. #16
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 913
    Points
    55 913
    Billets dans le blog
    131
    Par défaut
    Il faut alors l'ouvrir en mode création pour pouvoir identifier le(s) paramètre(s) dont elle a besoin
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  17. #17
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Donc en mode création il y a:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    2 champs:    calcrel                                   & Etinc
    2 tables:      Table_Suivi_Incident                          & Table_Suivi_Incident
    Mise a jour:   NbOpenDay([mailj0];Maintenant())-1
    Critères:                                                         "SuspenduClient"

  18. #18
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    En sql ça me donne ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE Table_Suivi_Incident SET Table_Suivi_Incident.calcrel = NbOpenDay([mailj0],Now())-1
    WHERE (((Table_Suivi_Incident.Etinc)="Suspendu Client"));
    Cherchez l'erreurs

  19. #19
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 913
    Points
    55 913
    Billets dans le blog
    131
    Par défaut
    Je suppose que NoOpenDay est une fonction perso. Elle requiert une valeur date sensée se trouver dans [mailj0]. A partir de là, deux solutions:
    Soit [mailj0] est un champ de TableSuiviIncident, soit c'est le nom d'un contrôle de formulaire.

    Comme il semble que cette requête soit appelée à l'ouverture de la base, je pencherais pour la première solution.

    Il y a donc peut-être dans ta table TableSuiviIncident un champ [mailj0], mais peut-être est-il NULL pour un ou plusieurs des enregistrements concernés par la requête.

    Il faudrait donc regarder dans la table en filtrant sur la valeur de ce champ.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  20. #20
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 12
    Points : 4
    Points
    4
    Par défaut
    Merci de votre aide le problème est résolu, en fait on a éffectué une restauration a une date antérieur!!
    bonne continuation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. erreur avec socket "un argument non valide à ete fournie"
    Par Abdelweheb dans le forum Réseau
    Réponses: 1
    Dernier message: 16/05/2012, 09h14
  2. Réponses: 2
    Dernier message: 02/08/2010, 16h31
  3. Argument non valide erreur 3001
    Par viktor951 dans le forum VBA Access
    Réponses: 23
    Dernier message: 26/05/2010, 16h12
  4. [A2-VBA][Débutante] Erreur "Argument non valide"
    Par Ericka dans le forum Access
    Réponses: 2
    Dernier message: 08/09/2006, 16h35
  5. Réponses: 8
    Dernier message: 08/09/2006, 14h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo