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

Excel Discussion :

Regrouper plusieurs excel dans un seul .xlsx


Sujet :

Excel

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

    Informations forums :
    Inscription : Juin 2012
    Messages : 2
    Par défaut Regrouper plusieurs excel dans un seul .xlsx
    Bonjour a tous,

    Je souhaite pourvoir regrouper dans un fichier excel plusieurs fichiers excels.
    Chaque fichier contient une seule feuille de calcul.
    Ces fichiers doivent devenir chacun une seule feuille de calcul de mon fichier cible.
    J'ai trouvé un code en cherchant et il correspond à ce que je recherche hormis qu'il fonctionne avec les .xls et pas les .xlsx .
    J'ai essayé de le modifié mais sans succès en remplaçant juste xls par xlsx.
    J' espère que certains d'entre vous vont pouvoir m'aider.
    Merci d'avance je vous joins le code qui fonctionne avec des xls :

    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
     
    Sub ConvertirFichiersEnFeuilles()
    On Error GoTo gesterreur
    Dim VarListeFichiers As Variant, VarFichier As Variant, WkClasseur As Workbook, WkFinal As Workbook, WsFeuille As Worksheet
     
    VarListeFichiers = Application.GetOpenFilename(filefilter:="Classeurs eXceL,*.xlsx", Title:="Choisissez les Classeurs à récupérer", MultiSelect:=True)
    If VarType(VarListeFichiers) = vbBoolean Then MsgBox "Abandon !": Exit Sub  'pour identifier le bouton annuler
    Set WkFinal = Workbooks.Add 'générer le classeur final
     
      For Ctr = 1 To UBound(VarListeFichiers)
        MsgBox VarListeFichiers(Ctr)
     
             Set WkClasseur = Workbooks.Open(Filename:=VarListeFichiers(Ctr))
            Set WsFeuille = WkClasseur.Worksheets(1)
                WsFeuille.Move before:=WkFinal.Worksheets(1)
            WkClasseur.Close savechanges:=False
     
      Next
     
    'For Each VarFichier In VarListeFichiers
     
    'Next VarFichier
     
    Exit Sub
     
    gesterreur:
    'classeur vide
    If Err.Number = -2147221080 Then
    Resume Next
    End If
     
    End Sub

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour.

    En gros même réponse que dans l'autre forum sauf qu'ici tu as bien voulu utiliser la balise de code.

    A noter aussi que cela ne marche pas plus avec des .xls …

    C'est le souci de copier / coller du code sur le net sans rien n'y connaitre n'y s'investir un tant soi peu !
    Je ne sais pas qu'elle est la source mais en tout cas à éviter …

    Déjà, la gestion d'erreur n'est pas appropriée : la désactiver !
    Si tu avais suivi la progression du code en mode pas à pas comme je te l'ai conseillé,
    tu aurais compris que l'erreur vient de la ligne n°16 en fait à cause de la ligne n°15 !

    Solution : voir l'aide de la méthode Copy associée à la collection Worksheets pour corriger la ligne n°15 …

Discussions similaires

  1. Regrouper plusieurs lignes dans une seule
    Par djinpark1 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 18/04/2013, 13h26
  2. [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
  3. Regrouper plusieurs vecteurs dans une seule matrice
    Par usto2005 dans le forum MATLAB
    Réponses: 2
    Dernier message: 05/04/2011, 18h20
  4. [AC-2007] Regrouper plusieurs cellules dans une seule
    Par J_help dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 20/07/2009, 18h47
  5. regrouper plusieurs champ dans un seul en requete
    Par Nicko29 dans le forum Access
    Réponses: 12
    Dernier message: 07/09/2005, 18h29

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