Sub Archivage()
Dim Source As Range, Dest As Range, Lgn As Range
' on travaille à partir de la feuille active
Set Source = ActiveSheet.Rows("25:31")
' pour plus de sécurité, il vaudrait mieux préciser le nom
' de la feuille source, donc écrire
' Set Source = ThisWorkbook.Worksheets("NomDeLaFeuille").Rows("25:31")
With ThisWorkbook.Worksheets("Recap")
Set Dest = .Range("A65536").End(xlUp)
If Dest.Row > 1 Or Dest <> "" Then Set Dest = Dest.Offset(1, 0)
End With
For Each Lgn In Source.Rows
If Lgn.Cells(1, 1) <> "" Then
Lgn.Copy
Dest.PasteSpecial xlPasteValuesAndNumberFormats
Set Dest = Dest.Offset(1, 0)
End If
Next Lgn
Application.CutCopyMode = False
End Sub