Bonjour le forum,
Je crée par le code un tableau croisé dynamique à partir d'une base Excel qui m'est fournie. Mais le champ"Mois" qui m'intéresse pour ce tableau et que je voudrais mettre en colonnes est en format standard, et au moment de l'élaboration du TCD, les mois sont classés par ordre alphabétique (Août 08, Avril 08 etc). Pour les remettre dans l'ordre qui m'intéresse, j'utilise ce code:
Seulement, ce n'est pas très élégant ni définitif. Est-ce que vous connaîtriez un moyen de raccourcir ce code?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 With Tableau .PivotFields("ID").Orientation = xlRowField .PivotFields("Mois").Orientation = xlColumnField .AddDataField Tableau.PivotFields("#Confirm"), "Nb Confirm", xlSum .AddDataField tcd.PivotFields("Nbre lignes"), "Nombre de lignes" .PivotFields("Mois").PivotItems("JANVIER 08").Position = 1 .PivotFields("Mois").PivotItems("FÉVRIER 08").Position = 2 .PivotFields("Mois").PivotItems("MARS 08").Position = 3 .PivotFields("Mois").PivotItems("AVRIL 08").Position = 4 .PivotFields("Mois").PivotItems("MAI 08").Position = 5 .PivotFields("Mois").PivotItems("JUIN 08").Position = 6 .PivotFields("Mois").PivotItems("JUILLET 08").Position = 7 .PivotFields("Mois").PivotItems("AOÛT 08").Position = 8 .PivotFields("Mois").PivotItems("SEPTEMBRE 08").Position = 9 .PivotFields("Mois").PivotItems("OCTOBRE 08").Position = 10 .PivotFields("Mois").PivotItems("NOVEMBRE 08").Position = 11 .PivotFields("Mois").PivotItems("DÉCEMBRE 08").Position = 12 .PivotFields("Mois").PivotItems("JANVIER 09").Position = 13 .PivotFields("Mois").PivotItems("FÉVRIER 09").Position = 14 .PivotFields("Mois").PivotItems("MARS 09").Position = 15 .PivotFields("Mois").PivotItems("AVRIL 09").Position = 16 .PivotFields("Mois").PivotItems("MAI 09").Position = 17 .PivotFields("Mois").PivotItems("JUIN 09").Position = 18 .PivotFields("Mois").PivotItems("JUILLET 09").Position = 19 .PivotFields("Mois").PivotItems("AOÛT 09").Position = 20 .PivotFields("Mois").PivotItems("SEPTEMBRE 09").Position = 21 .PivotFields("Mois").PivotItems("OCTOBRE 09").Position = 22 .PivotFields("Mois").PivotItems("NOVEMBRE 09").Position = 23 .PivotFields("Mois").PivotItems("DÉCEMBRE 09").Position = 24 End With
Partager