Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Me.Unprotect Password:="ton_mot_de_passe" 'ôte la protection de la feuille
Me.Cells(31, 2).Resize(Me.Cells(Rows.Count, 2).End(xlUp).Row, 5).ClearContents
tabFeuilles = Array("20-25", "25-30", "30-37", "35-45")
For f = 0 To 3
With Sheets(tabFeuilles(f))
nbLignesSrc = .Range("B" & Rows.Count).End(xlUp).Row - 18
nbLignesCible = Me.Cells(Rows.Count, 6).End(xlUp).Row - 30
.[B19].Resize(nbLignesSrc, 4).Copy _
Me.Cells(31, 2).Offset(nbLignesCible, 0)
.[I19].Resize(nbLignesSrc, 1).Copy
Me.Cells(31, 6).Offset(nbLignesCible, 0).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End With
Next f
Me.Range("B30:F" & Me.Cells(Rows.Count, 2).End(xlUp).Row).Sort key1:=Me.[C31], order1:=xlAscending, Header:=xlYes
Me.Cells(31, 2).Resize(Me.Cells(Rows.Count, 2).End(xlUp).Row, 5).Locked = True 'reverrouiller les cellules après le copier-coller
Me.Protect Password:="ton_mot_de_passe", DrawingObjects:=False, Contents:=True, Scenarios:=False 'préciser les autres arguments éventuels
Application.ScreenUpdating = True
End Sub