Voila un code qui permet de copier les lignes des onglets dans l'onglet récapitulatif.
Les uns à la suites des autres.
Sub recap()
Dim ligne As Integer
Dim F As Integer
Dim j As Integer
Dim i As Integer
ligne = 2
For F = 1 To Sheets.Count - 1
If Sheets(F).Range("$A2") <> "" Then
nbcells = Sheets(F).Range("$A1").End(xlDown).Row
For i = 2 To nbcells
For j = 1 To 16
Sheets("RECAPITULATIF ").Cells(ligne, j) = Sheets(F).Cells(i, j)
Next j
ligne = ligne + 1
Next i
End If
Next F
End Sub
Attention, Ce code fonctionne très bien mais a chaque fois que l'on exécute cette macro, l'onglet RECAPITULATIF est "réinitialisé" : cela écrase les données précédentes.
Donc l'onglet RECAPITULATIF ne garde pas d'historique d'un mois sur l'autre, si jamais les données changent tous les mois...
Si on veut garder l'historique, il faut changer:
ligne = 2
Par
If
Sheets("RECAPITULATIF ").Cells(2, 1) <>0
ligne = Sheets(RECAPITULATIF).Range("$A1").End(xlDown).Row
Else
ligne = 2
End If
Cela permettra de garder toutes les données.