Private Sub Worksheet_Change(ByVal target As Range)
Application.EnableEvents = False
Application.DisplayAlerts = False 'si la feuille "barêmes" n'existe pas
If FilterMode Then ShowAllData 'si la feuille est filtrée
Range("B3:F" & Rows.Count).Sort [B3], xlAscending, Header:=xlNo
With [B2].CurrentRegion
If .Rows.Count > 1 Then
.Columns(3).Offset(1).Resize(.Rows.Count - 1) = "=($C3*barêmes!$C$3)"
.Columns(4).Offset(1).Resize(.Rows.Count - 1) = "=($C3*barêmes!$C$4)"
.Columns(5).Offset(1).Resize(.Rows.Count - 1) = "=($C3*barêmes!$C$5)"
End If
.Resize(.Rows.Count + 1).Borders.Weight = xlThin 'bordures
End With
Application.EnableEvents = True
End Sub