Bonjour,
un bouton MAJ en B18.
Comme tu n'avais pas de formule faisant référence à d'autres lignes que celles copiées, j'ai laissé les formules.
Si besoin on peut ajouter une ligne pour ne mettre que les valeurs.
J'ai supprimer des sites pour diminuer le fichier.
Sub recap()
' constantes à adapter en cas d'évolution :
Const ligTitre As Long = 18, nbCol As Long = 39
'
Dim sh As Worksheet, shR As Worksheet
Dim lig As Long, nblig As Long
Set shR = Worksheets("Récap global")
' nettoyer
nblig = shR.Cells(Rows.Count, 1).End(xlUp).Row - ligTitre
If nblig > 0 Then shR.Cells(ligTitre + 1, 1).Resize(nblig).EntireRow.Delete
lig = ligTitre + 1
Application.ScreenUpdating = False
For Each sh In Worksheets
If sh.Name <> shR.Name Then
nblig = sh.Cells(Rows.Count, 1).End(xlUp).Row - ligTitre
If nblig > 0 Then
shR.Cells(lig, 1).Resize(nblig) = sh.Name
sh.Cells(ligTitre + 1, 1).Resize(nblig, nbCol).Copy
shR.Cells(lig, 2).Select
shR.Paste
lig = lig + nblig
End If
End If
Next sh
Application.Goto shR.Cells(ligTitre, 2), True
End Sub
eric