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 :

VBA - Regrouper plusieurs classeurs en un seul


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2016
    Messages : 6
    Par défaut VBA - Regrouper plusieurs classeurs en un seul
    Bonjour,

    Je souhaite faire un petit programme en VBA sur excel qui irait récupérer plusieurs classeurs (qu'ils soient xls. xlsx ou xlsxm) situés dans un même dossier pour ne faire plus qu'un seul classeur (chaque ancien classeur serait une feuille, les feuilles vides seraient supprimées). Toutes les feuilles de tous les classeurs situés dans le dossier seraient prises en compte et on ne connaitrait pas leur nom à l'avance. Le mieux serait qu'il n'y ait pas de références à ajouter dans la bibliothèques pour qu'un novice puisse utiliser le programme sans faire de manipulation.

    J'ai un peu fouillé sur le web mais n'ai pas réussi à adapter les codes trouvés avec ce que je veux faire précisément. Certains auraient des idées ?

    Merci d'avance.

    Macmun

  2. #2
    Membre chevronné Avatar de pasdechances
    Homme Profil pro
    Alternant, Ingénieur en systèmes Informatiques et Industriels
    Inscrit en
    Septembre 2015
    Messages
    218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Alternant, Ingénieur en systèmes Informatiques et Industriels
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Septembre 2015
    Messages : 218
    Par défaut
    Bonjour,
    Pour connaitre le contenu de ton dossier tu peux effecteur un "DIR()"
    Cette fonction de permet de savoir se qui se trouve dans le répertoire designer.
    En suite il te reste juste a ouvrir le classeur checker les feuilles du classeur avec une for each.
    Après il te reste plus qu' a tester une partie de la feuille.
    Une fois que tu identifies ce que tu as ou pas tu peux copier ou supprimer la feuille, ect

  3. #3
    Membre confirmé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Janvier 2016
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Landes (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Janvier 2016
    Messages : 112
    Par défaut
    Salut, voici un petit code que tu peux adapter si tu le souhaites
    Il y a une fenetre qui va te demander le chemin de ton fichier mais si tu connais le lien et qu'il ne va jamais changé mets le tout simplement, aprés Workbooks.Open Filename. Mets un fichier avec ton exemple si tu galère trop

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ' Copier les sorties
    ' Ouvrir un fichier excel et copier une zone de cellules dans une autre
     
    Workbooks.Open Filename:=InputBox("Entrez le chemin", "CHEMIN", "Le fichier que tu souhaites ouvrir.xlsx")
      Sheets("Feuil 1").Columns("D:E").Copy 'Mets le nom de ta Feuil et les colonnes que souhaite copier
     
     
    Windows("Ton dossier principal.xls").Activate 'mets ton le nom de ton dossier
      Sheets("Sorties S").Select
      Columns("A:B").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False

Discussions similaires

  1. [XL-2013] Macro pour regrouper plusieurs classeurs en un seul (1 classeur par onglet)
    Par estefania07 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 11/02/2019, 16h29
  2. Regrouper plusieurs classeurs en un seul en VBA
    Par sabrine1311 dans le forum Excel
    Réponses: 2
    Dernier message: 18/02/2015, 11h06
  3. [XL-2010] regrouper les macro de plusieurs classeurs dans un seul classeur
    Par jinane13 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 27/03/2013, 11h29
  4. Insérer un seul code vba dans plusieurs classeurs férmés
    Par jakoubi dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 26/02/2013, 23h35
  5. [Toutes versions] Macro regroupant plusieurs classeurs dans une seule feuille
    Par lisandjo dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 23/04/2012, 07h52

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