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

Access Discussion :

PB importation classeur excel sous access 2003


Sujet :

Access

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 4
    Points
    4
    Par défaut PB importation classeur excel sous access 2003
    Bonjour à tous.
    Après de longues recherches infructueuses je me tourne vers vous.
    Je dois construire une base données sous access 2003: c'est dire importer un fichier (devrais je dire un classeur) excel comportant beaucoup d'onglets (feuilles de calculs).
    lorsque je lance l'importation de ce fichier pour crée une unique table, j'ai un message d'access me demandant de sélectionner un seul onglet et de créer autant de table que d'onglet.
    Access offre t il la possibilité de tout importer sur une seule table?
    En espérant que quelqu'un à pu déjà résoudre ce problème et d'avoir été suffisament clair.
    Merci d'avance.

  2. #2
    Membre éclairé
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Points : 806
    Points
    806
    Par défaut
    Bonsoir,

    Pourquoi une seule table ?
    Tous les tableaux ont la même structure dans chaque feuille?

    Même si c'est le cas ce ne peux pas être une évidence pour lui!
    Il vaut mieux récuperer chaques feuilles séparément quitte à les réassemblés si leurs structures sont identiques!
    @+


    Pensez au tag

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Oui exactement dans chaque feuille il y a le même tableau, cest pour cela que je veux éviter de créer pour chaque feulle une table, si c'est pour ensuite les réassembler.

  4. #4
    Membre éclairé
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Points : 806
    Points
    806
    Par défaut
    Après quelques tests, je ne vois pas d'autre solution pourtant!
    @+


    Pensez au tag

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Mince alors!
    Donc je vais être obliger de crées 28 tables!!
    Une derniere chose : une fois ces 28 tables créées, est ce qu'il faut ensuite tout simplement que je lie toutes les tables entre elles ou y a t'il une meilleur façon de faire??? (sachant que le postulat de départ était de n'avoir qu'une seule table pour qu'ensuite avec l'aide d'un formulaire "saisie de mise à jour" cela renseigne ma table quotidiennement). Si je reste sur cette idée comment avec ce formulaire vais je pouvoir renseigner toutes mes tables?
    Je te remercie d'avance d'avoir pris le temps de m'apporter ces réponces.

  6. #6
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Voici un petit bout de code, pour t'orienter, partant du principe que :
    - le fichier XL (classeur1.xls) est à côté de la base, dans le même répertoire
    - je n'importe que 3 feuilles
    - je sais qu'il y a 5 colonnes (de A à E) mais j'ignore le nombre de lignes
    - que la table existe déjà ou pas, je dois ajouter les données dans la table 'MaTable'

    Ca marche très bien chez moi

    à toi !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub ImportXL()
        Const MyFile        As String = "Classeur1.xls"
        Dim strSheets(2)    As String
        Dim lngImport       As Long
        Dim strFile         As String
            strSheets(0) = "Feuil1"
            strSheets(1) = "Feuil2"
            strSheets(2) = "Feuil3"
        strFile = CurrentProject.Path & "\" & MyFile
     
        For lngImport = LBound(strSheets) To UBound(strSheets)
            DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "MaTable", strFile, True, strSheets(lngImport) & "!A1:E65535"
        Next
    End Sub

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Bonjour et merci encore pour ton aide Maxence.
    Désolé de ne pas avoir pu répondre plutôt.
    Excuse moi mais j'ai une connaissance tres faible au sujet des codes. j'ai bien compris le principe mais où dois je insérêt ce code (dans une requête création de table?) sachant que dans ton exemple la table n'est pas forcément créer et que tu lui demande d'y ajouter des données.
    Je suis perdu.

Discussions similaires

  1. importer classeur excel sous acces
    Par guigui71 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/11/2010, 19h38
  2. Importer de tres nombreuses feuilles Excel sous Access
    Par marion1987 dans le forum VBA Access
    Réponses: 11
    Dernier message: 12/10/2010, 20h07
  3. Réponses: 2
    Dernier message: 06/05/2008, 16h05
  4. entetes et debut d'import d'une feuille excel sous Access
    Par skillipo dans le forum VBA Access
    Réponses: 0
    Dernier message: 21/11/2007, 16h51
  5. [VBA] Importer une feuille Excel sous Access
    Par Keldon dans le forum VBA Access
    Réponses: 10
    Dernier message: 26/04/2007, 09h22

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