VBA Excel: Regrouper des données à la suite les unes des autres

Anna -  
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je dispose d'un code fonctionnant très bien et qui me permet de regrouper les données contenues dans différents classeurs .xls d'un même dossier, en un seul classeur mais dans des feuilles distinctes; le voici:

Sub MiseJourClasMensuel()
Dim wbbase As Workbook, shbase As Worksheet
Dim ext As String, chemin As String
Dim fs As Object, f As Object, sf As Object
Dim wbo As Variant
Dim deli As Long, deliba As Long
Application.ScreenUpdating = False
Set wbbase = ActiveWorkbook
Set shbase = Sheets("Recap")
chemin = wbbase.Path
ext = "xls"
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(chemin)
Set sf = f.Files
For Each wbo In sf
If wbo.Name <> wbbase.Name And Right(wbo.Name, Len(ext)) = ext Then
Workbooks.Open (chemin & "\" & wbo.Name)
Sheets(1).Copy after:=wbbase.Sheets(Sheets.Count)
deli = shbase.Cells(Rows.Count, 1).End(xlUp).Row + 1
shbase.Cells(deli, 1).Value = wbo.Name
shbase.Cells(deli, 2).Value = Date & " à " & Time
Workbooks(wbo.Name).Close SaveChanges:=True
End If
Next wbo
Set f = Nothing: Set fs = Nothing: Set sf = Nothing
shbase.Activate
Set wbbase = Nothing: Set shbase = Nothing
Application.ScreenUpdating = True

MsgBox "Les feuilles journalières sont ajoutées au classeur."

End Sub

J'aimerais désormais savoir comment modifier le code pour que les données ne soient plus collées dans des feuilles différentes mais dans une seule et même feuille, les unes sous les autres. Quelqu'un aurait-il une idée?

Merci par avance à vous!
A voir également:

1 réponse

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

apparemment, il suffirait de supprimer cette ligne
Sheets(1).Copy after:=wbbase.Sheets(Sheets.Count) 
--
Michel
0