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

Macros et VBA Excel Discussion :

Traiter plusieurs fichiers .xls de plusieurs feuilles [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Avatar de ChipsAlaMenthe
    Homme Profil pro
    Ingénieur en eau chaude et ballon rond
    Inscrit en
    Mai 2015
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur en eau chaude et ballon rond
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2015
    Messages : 138
    Points : 394
    Points
    394
    Par défaut Traiter plusieurs fichiers .xls de plusieurs feuilles
    Bonjour à tous!

    Je vous explique mon problème, je n'ai à ce jour pas encore trouvé mon bonheur .
    J'ai un dossier qui contient une centaine de fichier .xls différents, avec chacuns plusieurs feuilles.

    Mon but est le suivant: à partir d'un fichier .xlsm, j'aimerais pouvoir exécuter à l'aide d'une maccro certaines actions sur tous les fichiers .xls du dossier.

    Ma question est donc la suivante: savez-vous quelle fonction excel en VBA permet de traiter des fichiers différents?

    Je vous remercie

  2. #2
    Expert éminent

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 138
    Points : 9 972
    Points
    9 972
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Dir() pour boucler sur les fichiers d'un dossier
    Open pour ouvrir un classeur

    tout est illustré dans l'aide

    sinon, ce forum regorge de sujets traitant de ça : une petite recherche et tu auras ton bonheur

  3. #3
    Membre averti
    Avatar de ChipsAlaMenthe
    Homme Profil pro
    Ingénieur en eau chaude et ballon rond
    Inscrit en
    Mai 2015
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur en eau chaude et ballon rond
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2015
    Messages : 138
    Points : 394
    Points
    394
    Par défaut
    Je viens de trouver des explications sur le forum que je n'avais pas vu tout à l'heure.
    Par contre j'attend d'écrire une solution stable et de la poster ici avant de marquer le sujet comme résolu .

    Merci! ^^

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    idéalement voila la structure dont ta macro devrait être pourvue!
    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
    Sub test()
       TraitementRpertoire "c:\RepTest"
    End Sub
    Sub TraitementRpertoire(Rep As strinng)
    If Right(Rep, 1) <> "\" Then Rep = Rep & "\"
    Dim Fichier As String
    Fichier = Dir(Rep & "*.xls")
    While Fichier <> ""
        TraitementFichier Rep & Fichier
    Wend
    End Sub
    Sub TraitementFichier(Fichier)
    Dim Wb As Workbook
    Set Wb = Workbooks.Open(Fichier)
        For Each Sh In Wb.Sheets
            TraitementFeuille Sh
        Next
    Wb.Save
    Wb.Close
    Set Wb = Nothing
    End Sub
    Sub TraitementFeuille(Sh As Worksheet)
     
    End Sub

  5. #5
    Membre averti
    Avatar de ChipsAlaMenthe
    Homme Profil pro
    Ingénieur en eau chaude et ballon rond
    Inscrit en
    Mai 2015
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Ingénieur en eau chaude et ballon rond
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Mai 2015
    Messages : 138
    Points : 394
    Points
    394
    Par défaut
    Merci à toi! ^^ Grâce à ton message ça a fonctionné! ^^

    Voici le code exact que j'ai utilisé pour cela:

    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
    Sub OuvrirFichier()
        '-- Permet d'ouvrir les fichiers presents dans le dossier en question
        '-- Et de traiter independamment toutes les feuilles
        Dim NomRepertoire As String
        Dim Fichier As String
        Dim Wb As Workbook
     
        NomRepertoire = ThisWorkbook.Path & "\"
        Fichier = Dir(NomRepertoire & "*.xls")
     
        '-- Pour chaque fichier du dossier
        While Fichier <> ""
            Set Wb = Workbooks.Open(NomRepertoire & Fichier)
     
            '-- Pour chaque feuille de chaque fichier
            For Each Sh In Wb.Sheets
                '-- Traiter ici les elements
            Next
     
            Wb.Save
            Wb.Close
            Set Wb = Nothing
            Fichier = Dir
        Wend
    End Sub

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

Discussions similaires

  1. [E-03]Compiler plusieurs fichiers xls (fermés) dans un seul
    Par Geprocor dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 15/01/2018, 16h52
  2. Réponses: 18
    Dernier message: 19/03/2014, 18h04
  3. Réponses: 10
    Dernier message: 27/02/2009, 17h19
  4. Upload d'un repertoire avec plusieurs fichiers.xls
    Par skillipo dans le forum Documents
    Réponses: 1
    Dernier message: 18/03/2008, 10h59
  5. Réponses: 3
    Dernier message: 24/04/2007, 11h39

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