OVH Cloud OVH Cloud

GERER UN TCD

10 réponses
Avatar
GUIEU
Salut =E0 tous
prob: ce code me permet ,en faisant vari=E9 le dernier True=20
en False d'afficher ou de masquer toutes les donn=E9es dans=20
un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le=20
champ "DATE", format des donn=E9es dans ce champ "07/01/04=20
08:02:06".
Je pense qu'il s'agit d'une question de format, si=20
quelqu'un a une id=E9e je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating =3D True
With ActiveSheet.PivotTables("Tableau crois=E9=20
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible =3D True
Next

=20
For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") =3D monPivIt ' me permet de visualiser dans=20
ma feuille
ref =3D Range("m6").Text
.PivotItems(ref).visible =3D True
Next

10 réponses

Avatar
LeSteph
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit dans le message de
news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier True
en False d'afficher ou de masquer toutes les données dans
un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce champ "07/01/04
08:02:06".
Je pense qu'il s'agit d'une question de format, si
quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser dans
ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next
Avatar
Guieu
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier True
en False d'afficher ou de masquer toutes les données dans
un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce champ "07/01/04
08:02:06".
Je pense qu'il s'agit d'une question de format, si
quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser dans
ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.



Avatar
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce champ "07/01/04
08:02:06".
Je pense qu'il s'agit d'une question de format, si
quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.





Avatar
LeSteph
Dans m6 , il y a quoi ?
a écrit dans le message de
news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce champ "07/01/04
08:02:06".
Je pense qu'il s'agit d'une question de format, si
quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.





Avatar
Range("m6") = monPivIt
Dans m6 ,monPivIt
J'ai fait en sorte de donné a m6 la valeur de monPivIt
pour pouvoir contrôler si mon code énumérait toute la
liste contenue dans le pivotitem, ce qu'il fait bien.
D'autre part j'ai remplacé les données "dates" par des
données texte puis nombre mais sans séparation de type
espace et mon code fonctionne correctement.
Ce qui me fait dire que c'est le format date qui est en
cause.
Guieu

-----Message d'origine-----
Dans m6 , il y a quoi ?
a écrit dans le
message de

news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce
champ "07/01/04



08:02:06".
Je pense qu'il s'agit d'une question de format,
si



quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.





.





Avatar
LeSteph
A condition de conserver au moins 1 item même (vide)
ceci masque et affiche alternativement
sub affpivoitem()
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("date")
If .PivotItems(1).Visible = True Then
On Error Resume Next
For Each pvi In .PivotItems
pvi.Visible = False
Next

Else
For Each pvi In .PivotItems
pvi.Visible = True

Next
End If

End With
End Sub
"LeSteph" a écrit dans le message de
news:40f6d2ce$0$30897$
Dans m6 , il y a quoi ?
a écrit dans le message de
news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce champ "07/01/04
08:02:06".
Je pense qu'il s'agit d'une question de format, si
quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.









Avatar
Slt
Je vois qu'il y a des insomniaques comme moi :"2h54"
c'est du beau!
Bon mise a part ça ton code fonctionne a l'éffacement,
mais pas à l'affichage.
Qui peut comprendre?
A+
-----Message d'origine-----
A condition de conserver au moins 1 item même (vide)
ceci masque et affiche alternativement
sub affpivoitem()
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("date")
If .PivotItems(1).Visible = True Then
On Error Resume Next
For Each pvi In .PivotItems
pvi.Visible = False
Next

Else
For Each pvi In .PivotItems
pvi.Visible = True

Next
End If

End With
End Sub
"LeSteph" a écrit dans le message
de

news:40f6d2ce$0$30897$
Dans m6 , il y a quoi ?
a écrit dans le
message de


news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce
champ "07/01/04




08:02:06".
Je pense qu'il s'agit d'une question de
format, si




quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.








.






Avatar
LeSteph
Bonsoir,
Il doit y avoir comme un décalage horaire 23h54 était l'heure de départ!
...
Chez moi il fonctionne dans les 2 sens si on respecte la condition indiquée
conserver un item vide , soit laisser une ligne ne comportant pas la date
dans le tableau source.
Sinon on dirait que le TCD ne considère pas de champs donc ne peut
atteindre les items
J'ai testé en 97 et en 2003 . Mais si la mule avance je la trouve aussi
boîteuse.
J'ai essayé de répondre à ta demande en respectant ce que tu sohaitais
PivotItem.
Avec Pivotfield ce serait plus simple sans doute.
Je regarderai à ma prochaine insomnie, parcequ'en pratique je fais ou du tcd
ou du vba
Donc là, il va falloir que je croise les deux et mes neurones aussi et ce
soir je sens que
je ne serai pas insomniaque. Mais rassure toi , on est plus que deux surtout
dans le coin.

Sinon en Xl2003 utilises la petite flèche .

A bientôt.

LeSteph

a écrit dans le message de
news:2e85001c46b03$183e0c50$
Slt
Je vois qu'il y a des insomniaques comme moi :"2h54"
c'est du beau!
Bon mise a part ça ton code fonctionne a l'éffacement,
mais pas à l'affichage.
Qui peut comprendre?
A+
-----Message d'origine-----
A condition de conserver au moins 1 item même (vide)
ceci masque et affiche alternativement
sub affpivoitem()
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("date")
If .PivotItems(1).Visible = True Then
On Error Resume Next
For Each pvi In .PivotItems
pvi.Visible = False
Next

Else
For Each pvi In .PivotItems
pvi.Visible = True

Next
End If

End With
End Sub
"LeSteph" a écrit dans le message
de

news:40f6d2ce$0$30897$
Dans m6 , il y a quoi ?
a écrit dans le
message de


news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce
champ "07/01/04




08:02:06".
Je pense qu'il s'agit d'une question de
format, si




quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.








.






Avatar
LeSteph
Bonjour anonymous,
Celui ci dispense de la condition d'avoir au moins 1 (vide)

Sub displMasqPiv()
Static tst
With ActiveSheet. _
PivotTables("Tableau croisé dynamique1"). _
PivotFields("date")
If tst = "" Then
.Orientation = xlHidden

tst = 1
Else
.Orientation = xlRowField
For Each pvi In .PivotItems
pvi.Visible = True
Next
tst = ""
End If
End With
End Sub

Matinales salutations


a écrit dans le message de
news:2e85001c46b03$183e0c50$
Slt
Je vois qu'il y a des insomniaques comme moi :"2h54"
c'est du beau!
Bon mise a part ça ton code fonctionne a l'éffacement,
mais pas à l'affichage.
Qui peut comprendre?
A+
-----Message d'origine-----
A condition de conserver au moins 1 item même (vide)
ceci masque et affiche alternativement
sub affpivoitem()
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("date")
If .PivotItems(1).Visible = True Then
On Error Resume Next
For Each pvi In .PivotItems
pvi.Visible = False
Next

Else
For Each pvi In .PivotItems
pvi.Visible = True

Next
End If

End With
End Sub
"LeSteph" a écrit dans le message
de

news:40f6d2ce$0$30897$
Dans m6 , il y a quoi ?
a écrit dans le
message de


news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce
champ "07/01/04




08:02:06".
Je pense qu'il s'agit d'une question de
format, si




quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.








.






Avatar
LeSteph
Bonjour anonymous,
Celui ci dispense de la condition d'avoir au moins 1 (vide)

Sub displMasqPiv()
Static tst
With ActiveSheet. _
PivotTables("Tableau croisé dynamique1"). _
PivotFields("date")
If tst = "" Then
.Orientation = xlHidden

tst = 1
Else
.Orientation = xlRowField
tst = ""
End If
End With
End Sub

Matinales salutations

a écrit dans le message de
news:2e85001c46b03$183e0c50$
Slt
Je vois qu'il y a des insomniaques comme moi :"2h54"
c'est du beau!
Bon mise a part ça ton code fonctionne a l'éffacement,
mais pas à l'affichage.
Qui peut comprendre?
A+
-----Message d'origine-----
A condition de conserver au moins 1 item même (vide)
ceci masque et affiche alternativement
sub affpivoitem()
With ActiveSheet.PivotTables("Tableau croisé
dynamique1").PivotFields("date")
If .PivotItems(1).Visible = True Then
On Error Resume Next
For Each pvi In .PivotItems
pvi.Visible = False
Next

Else
For Each pvi In .PivotItems
pvi.Visible = True

Next
End If

End With
End Sub
"LeSteph" a écrit dans le message
de

news:40f6d2ce$0$30897$
Dans m6 , il y a quoi ?
a écrit dans le
message de


news:2d5bd01c46a5b$87d88a20$
Salut
Info suplémentaire:
message: erreur d'exécution 1004
Impossible de définir la propriété Visible de la classe
PivotItem.

-----Message d'origine-----
Salut "LeSteph"
Rien, nada, po d'bale : veut po marché ste MULE!!!
Une idée?
J'ai meme essayer " honte sur moi" : les sendkeys
-----Message d'origine-----
Bonjour,

probablement ajouter cette alternative

if monPivIt.visible=true then
monPivIt.visibleúlse
else
monPivIt.visible=true
end if

LeSteph

"GUIEU" a écrit
dans le message de

news:2cbc601c469b3$789723d0$
Salut à tous
prob: ce code me permet ,en faisant varié le dernier
True


en False d'afficher ou de masquer toutes les données
dans


un champ de TCD.
Mais il ne fonctionne qu' en mode False avec le
champ "DATE", format des données dans ce
champ "07/01/04




08:02:06".
Je pense qu'il s'agit d'une question de
format, si




quelqu'un a une idée je suis preneur merci.



Sub toutesDATES()

Application.ScreenUpdating = True
With ActiveSheet.PivotTables("Tableau croisé
dynamique3").PivotFields( _
"DATE")
Dim monPivIt As Object
For Each monPivIt In .PivotItems
On Error Resume Next
monPivIt.visible = True
Next


For Each monPivIt In .PivotItems
On Error Resume Next
Range("m6") = monPivIt ' me permet de visualiser
dans


ma feuille
ref = Range("m6").Text
.PivotItems(ref).visible = True
Next


.

.








.