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 :

Importer toutes les feuilles d'un classeur Excel dans Access


Sujet :

VBA Access

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Importer toutes les feuilles d'un classeur Excel dans Access
    Bonjour à tous (toutes),

    J'ai besoin de votre expertise pour importer (ou attacher, peu importe) toutes les feuilles d'un classeur Excel dans Access97.
    En soit, celà ne parait pas très compliqué.
    Le problème est que je ne connais ni le nombre de feuilles du classeur, ni leurs noms, et le nombre et les noms peuvent changer au cours du temps.
    Je cherche donc à créer, en automatique, autant de tables Access que de feuilles.

    Avez-vous une idée du comment faire?

    Par avance merci

    Jean-Pascal

  2. #2
    Membre chevronné
    Inscrit en
    Août 2006
    Messages
    1 588
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 1 588
    Points : 2 178
    Points
    2 178
    Par défaut
    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
    Sub Importation_Excel()
     
     On Error GoTo erreur
     
     Dim xlA As Object, xlW As Object
     Dim repertoire As String, fichier As String
     Dim feuille() As String, i As Long, n As Long
     
     Set xlA = CreateObject("excel.application")
     xlA.Visible = True
     repertoire = "d:\chemin\"
     fichier = "test.xls"
     
     xlA.workbooks.Open (repertoire & fichier)   'ouverture du fichier
     Set xlW = xlA.activeworkbook
     ReDim feuille(10)
     n = xlW.sheets.Count
     For i = 1 To n
       If i Mod 10 = 0 Then ReDim Preserve feuille(i + 10)
       feuille(i) = xlW.sheets(i).Name    'récupération du nom des onglets
     Next i
     
     Set xlW = Nothing
     xlA.activeworkbook.Close acQuitSaveNone   'fermeture du fichier
     xlA.Quit
     Set xlA = Nothing
     
     rem *** Importation des onglets ****
     For i = 1 To n
      If ExisteTable(feuille(i)) Then DoCmd.DeleteObject acTable, feuille(i)
      DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, feuille(i), repertoire & fichier, False, feuille(i) & "!", False
     Next i
     
     Exit Sub
    erreur:
     
    End Sub
     
     
    Function ExisteTable(s As String) As Boolean
     On Error GoTo erreur
     ExisteTable = False
     If CurrentDb.TableDefs(s).Name = s Then ExisteTable = True
     Exit Function
    erreur:
    End Function

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

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Super et Bravo!!!


    C'est exactement ce que je cherchais.

    Merci

    Jean-Pascal

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

Discussions similaires

  1. Positionnement dans toutes les feuilles d'un classeur Excel
    Par josephhd dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/05/2012, 10h32
  2. effacer toutes les feuilles d'un classeur commencant par "GRAPH"
    Par oscar.cesar dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/11/2007, 19h40
  3. Comment parcourir toutes les feuilles d'un classeur excel?
    Par Subkill dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/02/2007, 20h47
  4. [VBA]activer les feuilles d'un classeur Excel
    Par jemigo dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/01/2006, 17h58
  5. Action sur toutes les feuilles d'un classeur
    Par beurnoir dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 23/12/2005, 15h11

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