XL 2016 Aide sur tableau croisé dynamique

petitbuzuc

XLDnaute Nouveau
Bonjour
j'ai un pb sans doute simple mais je ne trouve pas comment faire et je sollicite votre aide. J'ai une feuille de donnée avec des data de 2021 et 2022. dans ce tableau, sur les lignes de détails, j'ai la variation en nombre et en % entre 2021 et 2022
Quand je veux faire un tableau croisé dynamique, est-il possible d'avoir le % de variation directement recalculé dans le TCD ? de plus, j'aimerai avoir en bout de colonne le nom du chef de rayon.
je vous mets en PJ mon fichier

je vous remercie par avance
Anne
 

Pièces jointes

  • Test_TCD.xlsx
    29.6 KB · Affichages: 7

chris

XLDnaute Barbatruc
Bonjour

Les TCD ont besoin d'un tableau structuré en source et n'aiment pas les tableaux à double entrée.

De ce fait pour calculer l'évolution 2002-2021/2021 il faut passer par un champ calculé.

Tu ne peux mettre de champ descriptif (chef de rayon) dans valeurs où seuls figurent les champs objets d'un calcul, il doit forcément en ligne ou colonne
 

Pièces jointes

  • Test_TCD2.xlsx
    27.3 KB · Affichages: 14
Dernière édition:

chris

XLDnaute Barbatruc
Bonjour
Se placer dans une cellule valeur du TCD, puis dans l'onglet Analyse TCD, Champs éléments et jeux (de mémoire un peu organisé autrement sur 2016), Champ calculé

1683879350188.png
 

petitbuzuc

XLDnaute Nouveau
Merci @chris ! j'ai réussi à faire de meme ! dernier question, quand moi je mets le chef de rayon en ligne de mon TCD, il arrive en sous ligne, alorsque dans le fichier que tu m'as fait, il apparait en colonne ! comment as tu fait ? merci pour ta patience ! 🙏
tcd_ko.jpg
 

chris

XLDnaute Barbatruc
Bonjour
Propriétés du champ Filière (le niveau au-dessus de celui à aligné) et
1683970998447.png

A noter cependant c'est moyen côté mise en forme car les styles de TCD sont faits pour les dispositions Compactée et Plan...
 

petitbuzuc

XLDnaute Nouveau
voila , grace à tes conseils, j'ai réussi à arriver au meme TCD que toi ! merci !

dis moi j'ai une autre question, toujours dans mon TCD :
Quand on analyse des données à partir de TCD, on a souvent recours au double clic pour voir les valeurs concernées.
Cela abouti à chaque fois à la création d'une nouvelle feuille et au bout d'un moment on en a plein de feuilles parasites.

comme chaque chef de rayon doit analyser son rayon, j'aimerai rajouter soit un bouton au bout de chaque ligne avec macro vba si besoin, soit un lien hypertexte afin qu'ils arrivent sur la page DATA où se trouve le tableau des données, directement filtrée sur détail :
filière = "épicerie salée" en variable.
(la filière suffit; car une filière ne peut etre que dans un seul univers. Par contre, on ne peut pas filtrer sur le chef de rayon car parfois ils ont plusieurs rayons à leur charge)


quitte à s'appuyer sur une page "référentiel" si besoin !

peux tu m'aide encore stp ?
 

Pièces jointes

  • tcd_detail.jpg
    tcd_detail.jpg
    86.7 KB · Affichages: 8
  • tcd_referentiel.jpg
    tcd_referentiel.jpg
    26.1 KB · Affichages: 7
Dernière édition:

petitbuzuc

XLDnaute Nouveau
Salut @chris
c'est exactement ce que je souhaite, à un petit bémol près. Quand je regarde la macro FiltreSource du Module, je vois que tu as filtré sur le chef de rayon.
2 questions/remarques :
- où as tu défini "Chef", qui apparait dans : Criteria1:=Chef ?
- ma clé unique est la filière, donc c'est là dessus qu'il faudrait qu'on filtre

merci d'avance !
 

petitbuzuc

XLDnaute Nouveau
Salut @chris , désolée pour mon imprécision effectivement ! là, ça colle parfaitement à mes attentes, un ENNOOOORRRMMMME merci !! :D grâce à toi, je vais gagner beaucoup de manip' manuelles pour les prochaines fois où je vais devoir générer ce fichier. Je te demanderai sans doute un coup de main dans un autre post car je dois aussi faire des manip' manuelles pour avoir un tableau détail exploitable. Je pense qu'avec powerquery, ça se fait en 2 coup de cueillère à pot. Mais on verra ça plus tard ;-)

pour finir de bien comprendre ce qu'on a fait, car le but c'est aussi de progresser :
quand tu dis "Dans le module de la feuille qui porte le TCD : Worksheet_BeforeDoubleClick on transmet l'info pour le filtre",
dans la version Test_TCD2.xlsm, il y avait dans cette macro "Criteria1:=Chef" : alors que je ne vois nul part d'étiquette "Chef" (dans mon tableau de détail, la colonne s'appelle "Chef de rayon". Je n'ai pas vu non plus dans le Gestionnaire des noms.
de meme que dans la nouvelle version Test_TCD3.xlsm, Criteria1:=Filiere : idem, je ne vois nul part Filiere écrit ainsi.

du coup, où est défini le texte qui suit "Criteria1:=" dans la macro ?

Encore merci !
 

chris

XLDnaute Barbatruc
Bonjour

C'est ce que appelle une variable : on lui donne le nom que l'on veut Toto, Zorro... mais Chef c'était logique... et je l'ai renommée ensuite Filiere

Dans le module Worksheet_BeforeDoubleClick le
Call FiltreSource(Target.PivotCell.RowItems(2).Caption
appelle le code du filtre en lui passant le niveau hiérarchique de niveau 2 de la ligne cliquée.
Le TCD ayant 3 niveaux, c'est la Filière qui est transmise au filtre
 

Statistiques des forums

Discussions
315 088
Messages
2 116 089
Membres
112 657
dernier inscrit
jpb3