Bonjour VBABeginner, bonjour le forum,
En pièce jointe ton fichier modifié avec le code ci-dessous. Fais ton choix dans la cellule F20...
Le code :
Private Sub Worksheet_Change(ByVal Target As Range) 'au changement dans l'onglet
If Target.Address <> "$F$20" Then Exit Sub 'si le changement a lieu ailleurs qu'en F20, sort de la procédure
If Selection.Cells.Count > 1 Then Exit Sub 'si plusieurs cellules sélectionnées, sort de la procédure
Range("F22:F31").Clear 'efface la plage F22:F31
Select Case Target.Value 'agit en fonction de la valeur de F20
Case "Somme" 'cas "Somme"
'transpose la plage F14:F14 dans la plage F22:F31
Range("F23:F31").Value = Application.Transpose(Range("F14:N14"))
Case "Différence"
'transpose la plage F15:F15 dans la plage F22:F31
Range("F23:F31").Value = Application.Transpose(Range("F15:N15"))
Case "" 'si la cellule est effacée
Exit Sub 'sort de la procédure
End Select 'fin de l'action en fonction de la valeur de la celllue F20
Range("F22").Value = "Filtre" 'ecrit "Filtre" en F22
Range("F22").AutoFilter Field:=1 'Filtre automatique en F22
End Sub
Le Fichier :