Récemment, un client nous a demandé s'il était possible de mettre en surbrillance une ligne d'un tableau en fonction de la sélection en cours dans un graphique.
C'est bien sûr possible avec XLCubed comme l'illustre cet exemple basé sur un graphique dynamique, l'une des multiples briques de visualisation disponibles, de XLCubed.


Dans l'exemple ci-dessus lorsque l'on clique sur un pays dans le graphique de gauche, les lignes correspondantes sont mises en surbrillance dans le tableau de droite. De même, si l'on clique sur un produit dans un pays spécifique dans le graphique, la ligne correspondante est mise en évidence dans le tableau.
Pour y parvenir, trois étapes sont nécessaires :
- 1. Configurer le graphique pour qu'il affiche les éléments sélectionnés dans des cellules
- 2. Formater le tableau en prenant en compte la sélection en cours dans le graphique
- 3. Forcer le rafraîchissement du tableau lorsque la sélection du graphique change
Paramétrage du graphique pour afficher la sélection en cours dans des cellules
Il est très simple de demander à XLCubed d'afficher dans des cellules Excel les éléments sélectionnés dans un graphique. Il suffit pour cela de cliquer sur la case correspondante dans la section "Interaction" des propriétés du graphique puis de préciser les plages de cellules de destination.
Une fois cette configuration effectuée, XLCubed copiera les éléments sélectionnés dans les cellules définies à chaque clic sur le graphique.

Ici, les sélections de la colonne (pays) et de la catégorie (produits) apparaîtront dans les cellules B2 et B3.
Configurer le tableau pour exploiter les cellules mises à jour par le graphique
Grace à la flexibilité du formatage des tableaux de XLCubed, les utilisateurs peuvent mettre en oeuvre un formatage automatique entièrement dynamique en s'appuyant sur le formatage Excel.
Ici, nous voulons appliquer un fond pour faire ressortir la ligne.

La mise en forme que nous avons appliqué a été ajoutée en tant que nouvelle ligne dans l'onglet de format du classeur. Il reste maintenant à la modifier pour la rendre dynamique en s'appuyant sur la puissance d'Excel.
Pour ce faire, nous remplaçons le paramétrage d'origine "en dur" par une simple formule Excel qui pointe vers la cellule mise à jour automatiquement par XLCubed à chaque clique sur le graphique.

Avec cette modification, le tableau formatera désormais la ligne contenant la sélection du graphique à chaque actualisation.
Cependant, une étape supplémentaire est nécessaire car un clic sur un graphique n'entraîne pas le rafraîchissement de la grille par défaut. Nous pouvons rafraîchir la grille en utilisant deux formules XL3 utiles : XL3RefreshObjectsNamed() & XL3Link()
Définir le tableau à rafraîchir
Tout d'abord, configurons la fonction "XL3Link" que nous utiliserons pour déclencher le rafraîchissement via la fonction "XL3RefreshObjectsNamed". La formule "XL3Link" peut être facilement créée ou modifiée à l'aide de l'assistant dédié.

Dans l'exemple ci-dessous, un clic que le lien de la formule "XL3Link" affectera la valeur TRUE dans la cellule B5.
Ceci déclenchera la formule d'actualisation que nous allons maintenant mettre en place.
Pour cela nous saisissons "=XL3refreshObjectsNamed(" et sélectionnons la cellule B5 comme premier argument puis saisissons le nom du tableau pour le second argument. Le premier argument est le déclencheur: dès que dès que la cellule indiquée prend la valeur vraie (TRUE) , le rafraîchissement du tableau précisé en tant que second argument a lieu. Une fois le cela fait, la valeur de la cellule servant de déclencheur est remise à FAUX (FALSE).
Le second argument permet de spécifier l'objet à rafraîchir (ici le tableau) et d'éviter le le rafraîchissement du classeur entier.
Dans notre cas, notre formule est "=XL3RefreshObjectsNamed(B5, "GridA") ", ce que signifie que lorsque la cellule B5 contient VRAI (TRUE), le tableau nommé "GridA" sera rafraîchi. La dernière étape consiste maintenant à paramétrer le graphique pour activer la formule XL3Link dès une sélection est faite.

Pour résumer, lorsqu'une sélection est effectuée dans le graphique, deux choses se produisent. En premier, la sélection est envoyée dans les cellules B2 et B3 qui sont ensuite récupérées par la feuille de format et le lien XL3 est activé. Celui-ci va à son tour envoyer VRAI (TRUE) au déclencheur, ce qui va activer la formule qui va rafraîchir le tableau et prendra en compte les modifications apportées à la feuille de format.
Ceci n'est qu'un exemple parmi d'autres de la façon dont différents éléments de XLCubed peuvent être combinés pour répondre à vos besoins de Reporting. Et vous, quelles sont les meilleures combinaisons que vous avez trouvées ?