Sub Macro1()
Dim LI As Integer 'déclare la variable LI (LIgne)
Dim DEST As Range 'déclare la variable DEST (cellule de DESTination)
Dim O As Worksheet 'déclare la variable O (Onglet)
Application.ScreenUpdating = False 'masque les rafraîchissements d'écran
Sheets("Synthèse").Range("A2").CurrentRegion.Offset(2, 0).ClearContents 'efface d'eventuelles anciennes données
For Each O In Sheets 'boucle sur tous les onglets O du classeur
If Not O.Name = "Synthèse" Then 'condition : si le nom de l'onglet n'est pas "Synthèse"
LI = O.Cells(Application.Rows.Count, 1).End(xlUp).Row 'définit la ligne LI de la dernière cellule éditée en colonne 1 (=A) de l'onglet O
'définit la cellule de destination DEST (première ligne vide de la colonne 1 (=A) de l'onglet "Synthèse"
Set DEST = Sheets("Synthèse").Cells(Application.Rows.Count, 1).End(xlUp).Offset(1, 0)
DEST.Value = O.Name 'renvoie dans DEST le nom de l'onglet
O.Cells(LI, 1).Resize(1, 50).Copy DEST.Offset(0, 1) 'renvoie dans DEST décalée d'une colonne à droite les 50 premières colonnes de la ligne LI
End If 'fin de la condition
Next O 'prochain onglet de la boucle
Application.ScreenUpdating = True 'affiche les rafraîchissements d'écran
End Sub