Concaténer plusieurs fichiers dans un seul onglet
C
Bonjour,
Je souhaiterai concaténer plusieurs fichiers (que j'irai sélectionner manuellement) dans un seul onglet. Chaque fichier a le même nombre de colonnes mais pas le même nombre de lignes.
j'ai récupéré sur ce site la macro suivante, qui fonctionne parfaitement ! Mais dans cette macro on doit mentionner le nb de colonnes, j'aimerai pouvoir la modifier de sortes à ce qu'elle s'adapte à toute taille de fichier. Des idées?
Également, peut on m'expliquer la signification de la variable "flag", ainsi que le "fin" mentionné à 2 reprises dans la macro?
Sub Consolidation_fichiers()
Dim f, fa As Worksheet, fv As Worksheet
Dim i&, lgn&, flag&
Set fa = ActiveWorkbook.ActiveSheet
fa.Range("A1").CurrentRegion.Offset(1, 0).ClearContents
f = Application.GetOpenFilename(, , , , True)
On Error GoTo fin
flag = 0
For i = 1 To UBound(f)
Workbooks.Open (f(i))
Set fv = ActiveSheet
lgn = fa.Range("A" & Rows.Count).End(xlUp)(2).Row
If flag = 0 Then
fv.Range("A1:BY" & fv.Range("A" & Rows.Count).End(xlUp).Row).Copy fa.Range("A1")
flag = 1
Else
fv.Range("A2:BY" & fv.Range("A" & Rows.Count).End(xlUp).Row).Copy fa.Range("A" & lgn)
End If
ActiveWindow.Close
Next i
fin:
End Sub