Bonjour,

J'ai un classeur contenant plusieurs feuilles avec des TCD.
Tous les TCD se nomment "Indicateur X.XX".

Je voudrais pouvoir boucler sur toutes les feuilles contenant un TCD, vérifier si le TCD contient un champs de ligne nommé "collège" par exemple et dans ce cas là, mettre l'item "Exécution" s'il apparaît en position 1.

J'étais parti sur quelque chose comme ci-dessous, mais bien évidemment, ça ne fonctionne pas.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub test()
Dim Pvt As PivotTable
Dim Sh As Worksheet ' Définit la variable Sh comme étant une feuille de calcul
 
Set Pvt = ActiveSheet.PivotTables(1)
 
For Each Sh In ThisWorkbook.Worksheets ' Boucle sur toutes les feuilles du classeur
    With Pvt
    If Pvt.PivotFields = "collège" Then Pvt.PivotFields("Collège").PivotItems("Exécution").Position = 1
    End With
Next Sh
 
End Sub
Ou plus simplement, existe-t-il un moyen d'obliger l'item à garder une position définie par l'utilisateur lors de l'actualisation ?
J'ai beau avoir coché "Conserver la mise en forme" dans les options du TCD, l'item fait son rebelle à l'actualisation.

Auriez-vous une idée ?

Merci d'avance,
Chtik