Bonjour
Je souhaite retirer l'ensemble des champs de mon TCD via VBA voici le code :
Le problème est que ce code fonction seulement pour les champs qui sont placés en page, ligne et colonne.
Pour les champs en Data, ceux-ci ne sont pas retirés de mon TCD.
L'instruction Pivotfield.count comptabilise les champs de la liste seulement.
Mais lorsque l'on fait glisser un champs dans la zone Data, ce champs se transforme en nombre de ...
Par exemple le champ "Période", lorsque l'on fait glisser dans le champ data ça donne "Nombre de période", ma routine ne fonctionne pas, et je suis obliger d'utiliser la même instruction en ajoutant le nom de champ "Nombre de...
Merci si vous avez une reponse.
Mousse
Je souhaite retirer l'ensemble des champs de mon TCD via VBA voici le code :
Code:
Sub Supfield()
'Procedure qui enleve tous les champs d'un TCD
Dim Mon_TCDy As PivotTable
Set Mon_TCDy = Worksheets("Feuil5").PivotTables("Mon_TCD")
With Mon_TCDy
For i = 1 To .PivotFields.Count
b = Mon_TCDy.PivotFields(i).Name
c = .PivotFields.Count
'Mon_TCDy.PivotFields(i).Delete
Mon_TCDy.PivotFields(i).Orientation = xlHidden
Next i
End With
End Sub
Le problème est que ce code fonction seulement pour les champs qui sont placés en page, ligne et colonne.
Pour les champs en Data, ceux-ci ne sont pas retirés de mon TCD.
L'instruction Pivotfield.count comptabilise les champs de la liste seulement.
Mais lorsque l'on fait glisser un champs dans la zone Data, ce champs se transforme en nombre de ...
Par exemple le champ "Période", lorsque l'on fait glisser dans le champ data ça donne "Nombre de période", ma routine ne fonctionne pas, et je suis obliger d'utiliser la même instruction en ajoutant le nom de champ "Nombre de...
Code:
Mon_TCDy.PivotFields("Nombre de Période").Orientation = xlHidden
Merci si vous avez une reponse.
Mousse