Bonjour,
je n'ai pas trouver comment l'empêcher mais ça, ça devrait les calmer :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim slC As SlicerCache, sl As Slicer
For Each slC In ActiveWorkbook.SlicerCaches
For Each sl In slC.Slicers
With sl
Select Case sl.Name
Case "Produit"
.Top = 150.75
.Left = 12.75
.Height = 205.5
.Width = 152.5
End Select
End With
Next sl
Next slC
End Sub
J'ai pris SelectionChange mais choisi l'événement qui te convient.
Pour la suppression, à part profiter de la boucle pour voir s'il est toujours présent et le recréer par macro je n'ai pas d'idée.
eric