Bonjour à tous,
J'ai un TCD avec un segment qui correspond à des réfs produits.
Je voudrais créer une macro qui demande sous forme d'une box la référence à l'utilisateur et cela permet de filtrer le segment selon la référence et donc le TCD ensuite.
J'ai réussi pour une seule ref, mais j'aimerais bien le faire pour tous. Cependant si je copie colle la même chose en changeant pour chaque ref ca me dit que ma macro est trop longue. Comment créer une sorte de boucle qui me permettrait de dire si résultat = x alors afficher le Slicer x et pas tous les autres ?? merci beaucoup pour votre aide !!!
Sub EAN()
'
' EAN Macro
'
'
Dim resultat As String
resultat = InputBox("Quelle est votre référence produit ?", "Résultat pour une référence produit") 'La variable reçoit la valeur entrée dans l'InputBox
If resultat = "0015306" Then
Application.ScreenUpdating = False
With ActiveWorkbook.SlicerCaches("Segment_Code_EAN")
.SlicerItems("0000647").Selected = False
.SlicerItems("0015306").Selected = True
.SlicerItems("0041404").Selected = False
.SlicerItems("0042418").Selected = False
.SlicerItems("0042517").Selected = False
.SlicerItems("0208715").Selected = False
.SlicerItems("0208982").Selected = False
.SlicerItems("0209095").Selected = False
.SlicerItems("0239795").Selected = False
.SlicerItems("80243570").Selected = False
.SlicerItems("0246120").Selected = False
.SlicerItems("0250080").Selected = False
.SlicerItems("0250257").Selected = False
.SlicerItems("0255351").Selected = False
.SlicerItems("0255979").Selected = False
.SlicerItems("0256020").Selected = False
.SlicerItems("0256099").Selected = False
.SlicerItems("0256877").Selected = False
.SlicerItems("0257294").Selected = False
.SlicerItems("0257645").Selected = False
.SlicerItems("0258529").Selected = False
.SlicerItems("0258543").Selected = False
Application.ScreenUpdating = True
End With
End If
End Sub