TCD et afficher tout

Le
René Delcourt
Bonjour,

Le forum abonde réponses concernant l'objet (voir un des exemples ci-dessous).
Lorsque les items sont très nombreux, le traitement est très long alors que
manuellement, en cliquant sur (Afficher tout), c'est quasi instantanné.
N'y a-t-il pas une macro qui reproduit cette sélection manuelle?
Merci

Application.DisplayAlerts = False
Application.ScreenUpdating = False
Set tcd = Worksheets("Feuil1").PivotTables(1)
For i = 1 To tcd.PivotFields.Count
For Each Pi In tcd.PivotFields(i).PivotItems
If Pi.Visible = False Then Pi.Visible = True
Next
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True

--
René Delcourt
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #4483371
bonjour René,

malheureusement non, il n'y a pas de méthode ShowAllData comme pour le filtre automatique.
en tous cas pas sur xl2002 peut être sur xl2003 et + mais je ne l'ai pas encore.

isabelle


Bonjour,

Le forum abonde réponses concernant l'objet (voir un des exemples ci-dessous).
Lorsque les items sont très nombreux, le traitement est très long alors que
manuellement, en cliquant sur (Afficher tout), c'est quasi instantanné.
N'y a-t-il pas une macro qui reproduit cette sélection manuelle?
Merci

Application.DisplayAlerts = False
Application.ScreenUpdating = False
Set tcd = Worksheets("Feuil1").PivotTables(1)
For i = 1 To tcd.PivotFields.Count
For Each Pi In tcd.PivotFields(i).PivotItems
If Pi.Visible = False Then Pi.Visible = True
Next
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True



MichDenis
Le #4483291
As-tu essayé ceci en adaptant le nom des objets selon ton application


Sub test()

Dim Pi As PivotItem

Application.Calculation = xlCalculationManual
With Me.PivotTables(1)
.ManualUpdate = True
For Each Pi In .PivotFields("Region").PivotItems
Pi.Visible = True
Next
.ManualUpdate = False
.RefreshTable
End With

End Sub




"René Delcourt"
Bonjour,

Le forum abonde réponses concernant l'objet (voir un des exemples ci-dessous).
Lorsque les items sont très nombreux, le traitement est très long alors que
manuellement, en cliquant sur (Afficher tout), c'est quasi instantanné.
N'y a-t-il pas une macro qui reproduit cette sélection manuelle?
Merci

Application.DisplayAlerts = False
Application.ScreenUpdating = False
Set tcd = Worksheets("Feuil1").PivotTables(1)
For i = 1 To tcd.PivotFields.Count
For Each Pi In tcd.PivotFields(i).PivotItems
If Pi.Visible = False Then Pi.Visible = True
Next
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True

--
René Delcourt
MichDenis
Le #4483171
Si tu copies le code ailleurs que dans le module feuille où tu as ton TDC,
évidemment tu devras remplacer "Me" par Worksheets("NomDelaFeuille")

et tu peux te débarrasser de ceci dans la sub :
Application.Calculation = xlCalculationManual



Sub test()

Dim Pi As PivotItem

Application.Calculation = xlCalculationManual
With Me.PivotTables(1)
.ManualUpdate = True
For Each Pi In .PivotFields("Region").PivotItems
Pi.Visible = True
Next
.ManualUpdate = False
.RefreshTable
End With

End Sub




"René Delcourt"
Bonjour,

Le forum abonde réponses concernant l'objet (voir un des exemples ci-dessous).
Lorsque les items sont très nombreux, le traitement est très long alors que
manuellement, en cliquant sur (Afficher tout), c'est quasi instantanné.
N'y a-t-il pas une macro qui reproduit cette sélection manuelle?
Merci

Application.DisplayAlerts = False
Application.ScreenUpdating = False
Set tcd = Worksheets("Feuil1").PivotTables(1)
For i = 1 To tcd.PivotFields.Count
For Each Pi In tcd.PivotFields(i).PivotItems
If Pi.Visible = False Then Pi.Visible = True
Next
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True

--
René Delcourt
Publicité
Poster une réponse
Anonyme