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

Requêtes et SQL. Discussion :

Erreur exportation vers Excel "Trop de champs définis"


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Erreur exportation vers Excel "Trop de champs définis"
    Bonjour,

    Tout à fait débutant en VBA....

    Je collecte des datas dans plusieurs tables d je fais quelques calculs simples, et

    Le code suivant fonctionne très bien pour une requète simple, mais génère l'erreur "trop de champs définis" à partir de 3 champs calculés dans ma requète

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Test()
    DoCmd.SetWarnings False
        Dim qd As QueryDef
        DoCmd.TransferSpreadsheet acExport, , "MaREQUETE", "D:\MifInitial.xls", False, ""
    DoCmd.SetWarnings True
    End Sub
    La requète elle même fonctionne très bien quelque soit le nb de champs définis, si je fais un export manuel...

    Quelqu'un a-t-il un élément de solution, ou une piste pour m'aider ?

    Merci d'avance

  2. #2
    Membre habitué Avatar de foste
    Inscrit en
    Octobre 2002
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 145
    Points : 127
    Points
    127
    Par défaut
    Bonjour et bienvenue sur ce forum,

    Je ne suis pas sure de pouvoir t'aider mais il me semble que pour une export il ne faut rien mettre apres le false (qui est d'ailleur par defaut)
    De plus tu definies "Dim qd As QueryDef" que tu n'utilises pas

    donc essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub Test()
    DoCmd.SetWarnings False
        DoCmd.TransferSpreadsheet acExport, , "MaREQUETE", "D:\MifInitial.xls"
    DoCmd.SetWarnings True
    End Sub
    Voila,
    Foste

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Pas de solution
    Merci Foste pour ton aide,

    En effet cela ne change pas mon pb,

    Il me semble que le souci vient du fait que j'exporte des champs calculés,
    je vais essayer de transformer la requète en table avant d'exporter, car il faut que cela fonctionne cette semaine,
    mais j'ai honte de me rabatre sur une solution aussi triviale.

    Merci encore

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France

    Informations professionnelles :
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 219
    Points : 1 707
    Points
    1 707
    Par défaut
    bonsoir,
    les champs calculés s'exportent non en champs calculés, mais en montant seulement,
    même si effectivement la fin de ta syntaxe peut être enlevée après le chemin d'acces elle fonction quand même.
    ton problème vient d'ailleurs ,
    plutôt que la transformer en table, fait une autre requête basée sur "MaREQUETE" et teste son export pour voir si tu as le même message.

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 3
    Points : 1
    Points
    1
    Par défaut YES !!!!!!!
    Merci LE VIEUX.
    Effectivement cela solutionne mon problème... Dont j'ignore toujours la vrai cause. mais peu importe.


    merci encore pour ton aide.

    A bientôt

  6. #6
    Membre actif
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2007
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2007
    Messages : 169
    Points : 241
    Points
    241
    Par défaut
    Je mets une réponse deux ans après mais ca peut toujours servir!

    J'ai eu le même problème et j'en ai trouvé la cause:

    Dans mon fichier Excel j'avais déjà une plage de données portant le même nom que la requête.
    Or, lorsque l'on utilise la fonction Transferspreadsheet, Excel nomme la table créée avec le nom de la requête.
    Cela crée donc un conflit!

    Solution: Renommer sa requête ou change le nom de la plage de données existante!

  7. #7
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2016
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2016
    Messages : 136
    Points : 149
    Points
    149
    Par défaut
    Lors d'un export vers Excel d'une requête qui avait l'air de marcher parfaitement (pas trop de colonnes, pas plus de lignes que d'autres) j'avais selon les cas "<mon appli> ne peut pas exporter les données" ou "trop de champs définis".

    Après des essais de copie vers une table temporaire (cf. SELECT INTO) qui me sortait des "types incompatibles", j'ai fini par trouver le fin mot de l'histoire : dans ma requête initiale, je faisais une jointure à partir d'un champ calculé !

    J'ai remplacé le champ calculé par un vrai champ fixe et tout s'est remis à marcher correctement.

    A toutes fins utiles ...

    On doit pouvoir aussi remplacer ce champ calculé par une macro de table "après modification" j'imagine !

    Cordialement,
    Olivier

  8. #8
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Octobre 2016
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Drôme (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2016
    Messages : 136
    Points : 149
    Points
    149
    Par défaut
    Bonjour,

    Un effet bizarre que j'ai constaté sur un Access 2013 : Quand je viens de modifier une requête et que je m'en sers pour envoyer des données vers un fichier Excel, j'ai parfois le message "Trop de champs définis" ... qui disparaît dès que j'efface au préalable le fichier cible (et sans retoucher le moins du monde à la requête) !!

    J'ai essayé de voir plus précisément dans quels cas ça se produit (ex. ajout puis suppression dans l'export d'un champ multi-valué) mais je ne suis pas arrivé à un processus reproductible à 100% (ie. à partir de l'ouverture d'une BD fraîchement compactée). Parfois, ça se met à le faire presque à tous les coups, parfois non !

    Donc - un conseil - si le message "Trop de champs définis" apparaît lors d'un export vers un fichier Excel préexistant, effacez-le et relancez la requête pour voir ...

    Cordialement,
    Olivier

Discussions similaires

  1. Erreur exportation vers Excel
    Par pompier21 dans le forum MATLAB
    Réponses: 5
    Dernier message: 11/06/2009, 18h06
  2. Erreur export vers excel
    Par saigon dans le forum VBA Access
    Réponses: 4
    Dernier message: 02/06/2008, 15h57
  3. Réponses: 4
    Dernier message: 07/01/2008, 19h15
  4. [Automation] Erreur lors de l'export vers Excel
    Par steps5ive dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/04/2007, 17h14
  5. Erreur d'exportation vers Excel : Trop de champs definis
    Par deglingo37 dans le forum Access
    Réponses: 3
    Dernier message: 15/06/2005, 18h30

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