Bonjour à tous, avec l'aide de certains j'ai pu faire retiré sur l'ensemble de mes classeurs les filtres actifs (pas supprimer le filtre mais bien retirer les filtres actifs).
Le code est le suivant:
'on supprime les filtres
Dim xAF As AutoFilter
Dim xFs As Filters
Dim xLos As ListObjects
Dim xLo As ListObject
Dim xRg As Range
Dim xWs As Worksheet
Dim xIntC, xF1, xF2, xCount As Integer
Application.ScreenUpdating = False
On Error Resume Next
For Each xWs In Application.Worksheets
xWs.ShowAllData
Set xLos = xWs.ListObjects
xCount = xLos.Count
For xF1 = 1 To xCount
Set xLo = xLos.Item(xF1)
Set xRg = xLo.Range
xIntC = xRg.Columns.Count
For xF2 = 1 To xIntC
xLo.Range.AutoFilter Field:=xF2
Next
Next
Next
Application.ScreenUpdating = True
ce code fonctionne très bien. Cependant le temps de traitement est assez long (compte tenu du nombre de tableaux nommés au sin de mon classeur).
Existe-t-il une solution (je suppose que oui) me permettant de cibler exclusivement les tableaux sur lesquels agit la macro.
Set TS_fwp = Range("interco_FWP").ListObject
Set TS_lbi = Range("interco_LBI").ListObject
Set TS_lan = Range("lan_compute_biplan").ListObject
Set TS_hybrid = Range("hybridation").ListObject
Set TS_spine = Range("Spines_L3_new").ListObject
Set TS_orion = Range("VxLan_avec_L3_new").ListObject
Set TS_L2 = Range("vlan_avec_L3").ListObject
Set TS_vip = Range("VIP_LB").ListObject
Set TS_lb = Range("conf_LB_new").ListObject
Set TS_ipam = Range("TS_ipam").ListObject
Ci-dessus, les tableaux que je déclare dans mon code et ceux sur lesquels réaliser le retrait des filtres actifs.
Si l'un de vous a une solution...
Merci
Sitting_Bull