OVH Cloud OVH Cloud

tabl. croisé dynamique

2 réponses
Avatar
Nico Iannizzi
Bonjour à toutes et à toutes,

J'ai un tableau croisé dynamique avec plusieurs champs.
Le tcd m'affiche +- 4000 lignes (sans aucun tri dans les champs).
En interface utilisateur, "afficher tout" (clic sur la fléche à côté d'un
champ
m'affiche quasiment instantanément toutes les données pour ce champ.
En VBA , la macro créée par l'enregistreur automatique , met beaucoup plus
longtemps à m'afficher tout.
Y-a-t'il un moyen d'accélérer par la macro?
PS: j'ai mis manuellement un application.screenupdating= false


Merci d'avance pour vos commentaires.


Nico Iannizzi

2 réponses

Avatar
ST
Oui, ça dépend du code que t'as généré ta macro mais à l'aveuglette, on ne
peut pas trop t'aider.

Merci de nous donner le code obtenu.

ST

"Nico Iannizzi" a écrit dans le
message de news:
Bonjour à toutes et à toutes,

J'ai un tableau croisé dynamique avec plusieurs champs.
Le tcd m'affiche +- 4000 lignes (sans aucun tri dans les champs).
En interface utilisateur, "afficher tout" (clic sur la fléche à côté d'un
champ
m'affiche quasiment instantanément toutes les données pour ce champ.
En VBA , la macro créée par l'enregistreur automatique , met beaucoup plus
longtemps à m'afficher tout.
Y-a-t'il un moyen d'accélérer par la macro?
PS: j'ai mis manuellement un application.screenupdating= false


Merci d'avance pour vos commentaires.


Nico Iannizzi



Avatar
Nico Iannizzi
Bonjour ST,

Voici le code:


Sub Macro14()
'
' Macro14 Macro
' Macro enregistrée le 10/06/2005 par Nico Iannizzi
'

'

Application.ScreenUpdating = False ' ligne ajouté manuellement par moi


With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Compte")
.PivotItems("041500").Visible = True
.PivotItems("042400").Visible = True
.PivotItems("042500").Visible = True
.PivotItems("046750").Visible = True
.PivotItems("047100").Visible = True
.PivotItems("048600").Visible = True
.PivotItems("049900").Visible = True
.PivotItems("051100").Visible = True
.PivotItems("051200").Visible = True
.PivotItems("051300").Visible = True
.PivotItems("051400").Visible = True
.PivotItems("051500").Visible = True
.PivotItems("051611").Visible = True
.PivotItems("051614").Visible = True
.PivotItems("051621").Visible = True
.PivotItems("051631").Visible = True
.PivotItems("051641").Visible = True
.PivotItems("055100").Visible = True
.PivotItems("10.010.10").Visible = True
.PivotItems("11.000.10").Visible = True
.PivotItems("11.000.30").Visible = True
.PivotItems("11.001.10").Visible = True
.PivotItems("11.001.30").Visible = True
.PivotItems("11.001.40").Visible = True
.PivotItems("11.001.42").Visible = True
.PivotItems("11.010.10").Visible = True
.PivotItems("11.010.12").Visible = True
.PivotItems("11.010.30").Visible = True
.PivotItems("11.010.40").Visible = True
.PivotItems("11.010.42").Visible = True
.PivotItems("11.030.10").Visible = True
.PivotItems("11.030.30").Visible = True
.PivotItems("11.300.10").Visible = True
.PivotItems("11.300.20").Visible = True
.PivotItems("11.300.21").Visible = True
.PivotItems("12.000.90").Visible = True
.PivotItems("12.010.10").Visible = True
.PivotItems("12.010.20").Visible = True
.PivotItems("12.010.90").Visible = True
.PivotItems("12.011.10").Visible = True
.PivotItems("12.011.20").Visible = True
End With
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Compte")
.PivotItems("12.011.30").Visible = True
.PivotItems("12.011.40").Visible = True
.PivotItems("12.011.50").Visible = True
.PivotItems("12.011.70").Visible = True
.PivotItems("12.011.80").Visible = True
.PivotItems("12.011.90").Visible = True
.PivotItems("12.012.10").Visible = True
.PivotItems("12.013.10").Visible = True
.PivotItems("12.020.10").Visible = True
.PivotItems("12.020.20").Visible = True
.PivotItems("12.020.30").Visible = True
.PivotItems("12.020.40").Visible = True
.PivotItems("12.020.90").Visible = True
.PivotItems("12.040.10").Visible = True
.PivotItems("12.040.20").Visible = True
.PivotItems("12.040.30").Visible = True
.PivotItems("12.040.40").Visible = True
.PivotItems("12.040.50").Visible = True
.PivotItems("12.040.60").Visible = True
.PivotItems("12.040.62").Visible = True
.PivotItems("12.040.70").Visible = True
.PivotItems("12.040.90").Visible = True
.PivotItems("12.050.10").Visible = True
.PivotItems("12.050.20").Visible = True
.PivotItems("12.050.30").Visible = True
.PivotItems("12.050.40").Visible = True
.PivotItems("12.050.80").Visible = True
.PivotItems("12.050.90").Visible = True
.PivotItems("12.051.10").Visible = True
.PivotItems("12.060.10").Visible = True
.PivotItems("12.060.20").Visible = True
.PivotItems("12.060.30").Visible = True
.PivotItems("12.060.40").Visible = True
.PivotItems("12.060.50").Visible = True
.PivotItems("12.070.10").Visible = True
.PivotItems("12.070.12").Visible = True
.PivotItems("12.070.20").Visible = True
.PivotItems("12.070.22").Visible = True
End With
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Compte")
.PivotItems("12.070.30").Visible = True
.PivotItems("12.070.40").Visible = True
.PivotItems("12.070.90").Visible = True
.PivotItems("12.080.10").Visible = True
.PivotItems("12.080.20").Visible = True
.PivotItems("12.080.40").Visible = True
.PivotItems("12.080.42").Visible = True
.PivotItems("12.080.50").Visible = True
.PivotItems("12.080.52").Visible = True
.PivotItems("12.080.60").Visible = True
.PivotItems("12.080.70").Visible = True
.PivotItems("12.080.90").Visible = True
.PivotItems("12.101.10").Visible = True
.PivotItems("12.101.12").Visible = True
.PivotItems("12.101.20").Visible = True
.PivotItems("12.101.21").Visible = True
.PivotItems("12.101.22").Visible = True
.PivotItems("12.120.10").Visible = True
.PivotItems("12.131.10").Visible = True
.PivotItems("12.131.20").Visible = True
.PivotItems("12.170.10").Visible = True
.PivotItems("12.170.32").Visible = True
.PivotItems("12.170.90").Visible = True
.PivotItems("12.190.10").Visible = True
.PivotItems("12.190.40").Visible = True
.PivotItems("12.190.80").Visible = True
.PivotItems("12.190.90").Visible = True
.PivotItems("12.200.12").Visible = True
.PivotItems("12.210.10").Visible = True
.PivotItems("12.250.10").Visible = True
.PivotItems("12.300.10").Visible = True
.PivotItems("12.300.20").Visible = True
.PivotItems("12.301.10").Visible = True
.PivotItems("12.302.10").Visible = True
.PivotItems("12.302.20").Visible = True
.PivotItems("12.302.90").Visible = True
.PivotItems("12.303.10").Visible = True
.PivotItems("12.303.20").Visible = True
End With
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("Compte")
.PivotItems("12.303.30").Visible = True
.PivotItems("12.303.90").Visible = True
.PivotItems("12.304.32").Visible = True
.PivotItems("12.305.10").Visible = True
.PivotItems("12.305.12").Visible = True
.PivotItems("12.307.20").Visible = True
.PivotItems("12.308.10").Visible = True
.PivotItems("16.020.10").Visible = True
.PivotItems("26.010.10").Visible = True
.PivotItems("26.010.20").Visible = True
.PivotItems("33.000.10").Visible = True
.PivotItems("33.000.20").Visible = True
.PivotItems("33.000.30").Visible = True
.PivotItems("33.000.40").Visible = True
.PivotItems("33.000.50").Visible = True
.PivotItems("33.001.20").Visible = True
.PivotItems("33.001.30").Visible = True
.PivotItems("33.001.40").Visible = True
.PivotItems("33.001.50").Visible = True
.PivotItems("34.090.10").Visible = True
.PivotItems("34.091.10").Visible = True
.PivotItems("34.091.20").Visible = True
.PivotItems("35.060.10").Visible = True
.PivotItems("35.060.20").Visible = True
.PivotItems("35.060.30").Visible = True
.PivotItems("35.060.40").Visible = True
.PivotItems("35.060.50").Visible = True
.PivotItems("66.030.10").Visible = True
.PivotItems("74.040.10").Visible = True
.PivotItems("74.050.10").Visible = True
.PivotItems("74.060.10").Visible = True
.PivotItems("74.070.10").Visible = True
.PivotItems("74.080.10").Visible = True
End With
End Sub




Oui, ça dépend du code que t'as généré ta macro mais à l'aveuglette, on ne
peut pas trop t'aider.

Merci de nous donner le code obtenu.

ST

"Nico Iannizzi" a écrit dans le
message de news:
Bonjour à toutes et à toutes,

J'ai un tableau croisé dynamique avec plusieurs champs.
Le tcd m'affiche +- 4000 lignes (sans aucun tri dans les champs).
En interface utilisateur, "afficher tout" (clic sur la fléche à côté d'un
champ
m'affiche quasiment instantanément toutes les données pour ce champ.
En VBA , la macro créée par l'enregistreur automatique , met beaucoup plus
longtemps à m'afficher tout.
Y-a-t'il un moyen d'accélérer par la macro?
PS: j'ai mis manuellement un application.screenupdating= false


Merci d'avance pour vos commentaires.


Nico Iannizzi