Private Sub Worksheet_Change(ByVal T As Range)
Application.ScreenUpdating = False
If T.Address = "$E$1" Then
Select Case T.Value
Case Is = "Ligne 1"
Rows("2:14").Hidden = False
Rows("15:40").Hidden = True
Case Is = "Ligne 2"
Rows("2:14").Hidden = True
Rows("15:27").Hidden = False
Rows("28:40").Hidden = True
Case Is = "Ligne 3"
'je te laisse continuer sur la même logique et faire les tests
Case Is = "AUTRE"
'idem à toi de jouer
End Select
End If
End Sub