Bonjour à tous et bonne année,
Je cherche à faire quelque chose en VBA et je n'y arrive pas.
Je m'explique.
J'ai une pivot table avec un chiffre d'affaire en fonction d'une année fiscale (qui commence au mois d'avril).
J'ai réussi à faire une macro qui update les mois en fonction du mois actuel à l'ouverture du fichier.
J'aimerai faire la même chose avec les années cependant pour faire cette macro, la valeur de l'année prochaine par exemple n'existe pas encore dans la pivot table.
Donc en avril prochain, par exemple, j'ai créer une cellule avec une formule simple qui donne comme résultat :
"2014-2015" et qui en avril 2015 donnera = "2015-2016"
Pour pouvoir créer des deltas j'ai créer la même cellule en dessous qui donne la période en Y-1 donc 2013-2014 par exemple.
Mon problème est le suivant. Comment dans vba déclarer une cellule comme étant un item du pivot table.
Dans le code ci dessous je vous montre ce que j'aimerais faire :
La cellule X7 contient la formule pour l'année fiscale en cours (et donne comme à l'heure actuelle 2013-2014 par exemple).
Pour filtrer la pivot par défaut avec une valeur donnée il fait simplement :
"[Stats client].[Année Inbev].&[Inbev]&[2012-2013]", _
Ma question est donc comment remplacer [2012-2013] par une valeur definie depuis une cellule (X7) comme j'ai essayé de faire juste en dessous de la sorte :
"[Stats client].[Année Inbev].&[Inbev]&[celluleannee]"
J'espère être clair.
Merci d'avance à tous pour votre aide précieuse
Je cherche à faire quelque chose en VBA et je n'y arrive pas.
Je m'explique.
J'ai une pivot table avec un chiffre d'affaire en fonction d'une année fiscale (qui commence au mois d'avril).
J'ai réussi à faire une macro qui update les mois en fonction du mois actuel à l'ouverture du fichier.
J'aimerai faire la même chose avec les années cependant pour faire cette macro, la valeur de l'année prochaine par exemple n'existe pas encore dans la pivot table.
Donc en avril prochain, par exemple, j'ai créer une cellule avec une formule simple qui donne comme résultat :
"2014-2015" et qui en avril 2015 donnera = "2015-2016"
Pour pouvoir créer des deltas j'ai créer la même cellule en dessous qui donne la période en Y-1 donc 2013-2014 par exemple.
Mon problème est le suivant. Comment dans vba déclarer une cellule comme étant un item du pivot table.
Dans le code ci dessous je vous montre ce que j'aimerais faire :
La cellule X7 contient la formule pour l'année fiscale en cours (et donne comme à l'heure actuelle 2013-2014 par exemple).
Code:
Sub Macro2()
'
' Macro2 Macro
'
'
Dim celluleannee As PivotItem
annee = Range("X7")
ActiveSheet.PivotTables("camois").PivotFields( _
"[Stats client].[Année Inbev].[Année Inbev]").VisibleItemsList = Array( _
"[Stats client].[Année Inbev].&[Inbev]&[2012-2013]", _
"[Stats client].[Année Inbev].&[Inbev]&[celluleannee]")
End Sub
Pour filtrer la pivot par défaut avec une valeur donnée il fait simplement :
"[Stats client].[Année Inbev].&[Inbev]&[2012-2013]", _
Ma question est donc comment remplacer [2012-2013] par une valeur definie depuis une cellule (X7) comme j'ai essayé de faire juste en dessous de la sorte :
"[Stats client].[Année Inbev].&[Inbev]&[celluleannee]"
J'espère être clair.
Merci d'avance à tous pour votre aide précieuse
Dernière édition: