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 :

import depuis Excel


Sujet :

VBA Access

  1. #1
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut import depuis Excel
    Bonjour a tous,

    Je souhaiterai effectuer un import d'un fichier excel vers ma BDD access, j'ai le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim path As String
        Dim nomBase As String
     
        nomBase = "Base réel"
        path = "B:\Réel_" & correspondanceMois(Month(Now)) & "_" & Year(Now)
        DoCmd.RunSQL "DELETE TABLE FROM " & nomBase
        DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Base réel", path, True
    quand j'exécute il me dit qu'il a un soucis au niveau du "FROM"
    deplus, l'import ne fonctionne pas.
    il me dit avec une erreur '2391', le champ "paie" n'existe pas dans la table de destination "Base réel". Probleme surement du au fait que j'ai deux feuilles dans mon classeur excel, peut-on choisir un feuille en particulier quand on importe ?

    Merci par avance pour vos réponse.
    Cordialement.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    salut,
    lorsqu'un champ/table comporte des noms avec des espaces, il faut encadrer ces noms par des crochets

    d'autre part, tu veux vider ou bien détruire une table ?

    DELETE sert à supprimer des enregistrements.
    Si tu souhaites détruire une table, il faut utiliser DROP TABLE
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  3. #3
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut
    je souhaite effacer le contenu de la table afin de conserver le format des champs (texte) sinon avec l'import depuis excel il va me mettre des champs en numerique.

    Donc si je suis ce que tu dis, il faudrais que ma variable s'appele

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nomBase = "[Base réel]"
    j'aurais aussi voulu quelque eclaircissement du coté de ca: DoCmd.TransferSpreadsheet

    je sais pas vraiment comment on l'utilise et a quoi correspondent les parametres.

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    ok,

    la syntaxe pour vider la table sera alors
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    DELETE * FROM MaTable

    Concernant la fonction transferspreadsheet, outre l'aide en ligne qui indique la syntaxe et les paramètres à passer, il s'agit de donner à access les infos nécessaires au bon déroulement de l'import/export:
    - import ou export ou attachement de données
    - source
    - cible
    - nom des champs
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre très actif Avatar de Nako_lito
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2008
    Messages
    793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 793
    Par défaut
    je pense a faire F1 sur une méthode que je comprend pas, et si je la comprend pas, je post pour demander une info en plus

    de plus dans les parametres tu mets:

    - import ou export ou attachement de données
    - source
    - cible
    - nom des champs <== qu'es ce que tu entend par ca ? faut mettre tout les champs de la table ?

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    non, en fait il s'agit de spécifier si la première ligne contient ou non le nom des champs
    les valeurs attendues sont True ou False
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 23/04/2012, 15h15
  2. clé primaire sur table importée depuis Excel
    Par bravojr dans le forum Modélisation
    Réponses: 6
    Dernier message: 24/10/2008, 08h53
  3. Vérification des données importées depuis excel
    Par noakiss dans le forum VBA Access
    Réponses: 0
    Dernier message: 31/03/2008, 11h21
  4. Probléme d'import depuis Excel
    Par FCL31 dans le forum VBA Access
    Réponses: 2
    Dernier message: 12/12/2007, 15h12
  5. Problemes d'importation depuis excel
    Par KANCRENAZ dans le forum Access
    Réponses: 3
    Dernier message: 17/02/2005, 09h57

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