Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Conctaténation d'onglets Excel

pledger

XLDnaute Junior
Bonjours à tous

Je vous contact car j'ai actuellement un problème : Je dispose d'une soixantaine de fichiers Excel, et chacun dispose de 12 onglets ( certains moins ). Ces onglets sont tous formater de la même manière.

Je souhaiterai donc savoir si il étais possible de concaténé tous les onglets d'un Classeur en un seul et si oui pouvez vous m'aidé ? J'ai quelques notions en Vba mais je reste un débutant.

Je précise également que dans ces fichiers il existe de nombreuses cellules fusionnées . Je met ci-joint un fichier exemple d'un onglet.

Regarde la pièce jointe OngletExemple.xls

Ps : Le fichier ci joint est formaté mais il n'y a aucune données. Etant en stage je suis tenue au secret professionnel. Merci de votre conpréhension

Merci d'avance
 

pledger

XLDnaute Junior
Re : Conctaténation d'onglets Excel

Bonjours kiki29 et merci de ce conseil =) malheureusement lorsque je lance le code
J'obtient l'erreur : "erreur de compilation ; variable non définie"

Il me surligne en bleu cette ligne : ShConcat.Cells.Clear
 

job75

XLDnaute Barbatruc
Re : Conctaténation d'onglets Excel

Bonjour,

Le fichier n'aide pas beaucoup...

Si la feuille où l'on fait la concaténation est la feuille active, on peut essayer cette macro élémentaire :

Code:
Sub Copie()
Dim w As Worksheet
Application.ScreenUpdating = False
For Each w In Worksheets
  If w.Name <> ActiveSheet.Name Then _
  w.Range("1:" & w.[A65536].End(xlUp).Row).Copy ActiveSheet.[A65536].End(xlUp)(2)
Next
End Sub
Edit : on voit qu'on copie à partir de la ligne 1.

Si l'on veut copier à partir de la ligne 3 => w.Range("3:" & ...

A+
 
Dernière édition:

pledger

XLDnaute Junior
Re : Conctaténation d'onglets Excel

Merci à toi Job75 ça marche parfaitement. Je m'excuse encore une fois pour le fichier joint qui n'aide pas beaucoup mais cela touche à un sujet sensible .

Si je peut me permettre Job75 , est il possible ensuite de concaténé plusieurs fichiers Excel en un seul ?
 

job75

XLDnaute Barbatruc
Re : Conctaténation d'onglets Excel

Re,

On peut concaténer les feuilles de plusieurs fichiers, ils doivent être ouverts.

Toujours sur la feuille active du classeur actif :

Code:
Sub Copie()
Dim Wb As Workbook, w As Worksheet
Application.ScreenUpdating = False
For Each Wb In Workbooks 'fichiers ouverts
  For Each w In Wb.Worksheets
    If Wb.Name <> ActiveWorkbook.Name Or w.Name <> ActiveSheet.Name Then _
    w.Range("1:" & w.[A65536].End(xlUp).Row).Copy ActiveSheet.[A65536].End(xlUp)(2)
  Next
Next
End Sub
A+
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…