0
(0)

Pas trop sûr que cela soit beaucoup utilisé mais pour le plaisir de mettre les mains là où on ne devrait pas !

Problématique

Situation de départ

Quand on génère des regroupements dans un tableau dynamique (je ne valide pas le terme "croisé"), Excel va générer des noms de manière automatique (par exemple Groupe1, Groupe2...).

Base de données

Base de données de départ

Tableau avant regroupement par trimestre

Tableau croisé dynamique de départ

Tableau après regroupement par trimestre
("Groupe1" est renommé "Trim1")

Tableau croisé dynamique de départ avec regroupement par trimestre. Avec le 1er groupe renommé.

Il suffit de sélectionner une des cellules contenant un de ces noms et de saisir la nouvelle valeur. Si ce nom était affiché plusieurs fois, toutes les occurrences de ce nom seraient instantanément mises à jour. Magique !

Où est le problème ?

Si l'on décide de créer un nouveau tableau croisé dynamique basé sur la même source de données (même cache de données : voir ), on a la mauvaise surprise de retrouver les noms d'origines (ici Groupe1).

Le hack

On va modifier les entrailles du fichier Excel afin que ce nom soit conservé et utilisé pour les nouveaux tableau dynamique.

  1. On décide quel groupe aura quel nom.
  2. On ferme le fichier Excel.
  3. On fait une copie du fichier (on ne sait jamais).
  4. On renomme le fichier en ajoutant l'extension ".zip" après le ".xlsx" (par exemple "Rapport.xlsx" devient "Rapport.xlsx.zip").
  5. On va extraire le fichier xl\pivotCache\pivotCacheDefinition#.xml (le # représente un chiffre dépendant du n° du cache de données).
  6. Dans ce fichier on va modifier les noms présents dans la balise <groupItems> (ici on remplacera "Groupe1" par "Trimestre1").
Modification du fichier interne pivotCacheDefinition1.xml
  1. On sauvegarde et on replace ce fichier dans l'archive zip.
  2. On renomme le fichier en supprimant l'extension ".zip" après le ".xlsx".
  3. On ouvre le fichier et quand on refait un nouveau tableau dynamique à partir de cette source de données avec le champ généré par le regroupement (ici le champ Mois2), on retrouve les nouveaux noms définis (ici "Trimestre1").

Merci pour votre attention bienveillante.

Article intéressant ?

Cliquez sur une étoile pour noter cet article !

Note moyenne 0 / 5. Nombre de votes : 0

Aucun vote pour l'instant ! Soyez le premier à noter ce post.

Nous sommes désolés que cet article ne vous ait pas été utile !

Améliorons cet article !

Dites nous comment nous pouvons améliorer cet article ?

Publications similaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *