Création d’un graphe générique (a)
J’ai été confronté au problème
que je vous présente aujourd’hui il y a quelques années, quand je travaillais
comme consultant pour Aéroports de Paris. J’ai en effet réalisé pour AdP un
grand nombre de modèles entre 2000 et 2012.
Le premier de ces modèles simulait
des tapis roulants portant les bagages des passagers. Il se trouvait qu’AdP
louait à Air France ces tapis roulants et qu’Air France, estimant que leur
efficacité n’était pas à la hauteur, réclamait d’importants dommages et
intérêts à AdP.
AdP a donc lancé un appel d’offres
pour l’analyse de ces tapis roulants avec deux objectifs : d’une part,
trouver des arguments pour contrer les attaques d’Air France et, d’autre part,
utiliser le modèle de simulation des tapis roulants pour améliorer leur efficacité.
AdP a eu un problème avec cet
appel d’offres. Mon devis était de 300.000 F et le moins cher des concurrents était
à 1.500.000 F. J’ai failli ne pas obtenir la commande d’AdP à cause de cet
écart mais ce qui m’a sauvé, c’est que, dans la commission analysant l’appel d’offres,
un des membres appartenait à une société pour laquelle j’avais réalisé un
modèle qui avait très bien marché.
Ils se sont alors dit : « Si
l’on prend cette solution et qu’elle ne marche pas, on aura perdu 3 mois et 20%
du budget. Si en revanche elle marche, on gagne une année et on économise 80%
du budget ». Ils ont pris le risque, et cela a tellement bien marché que j’ai
ensuite réalisé des modèles pour AdP durant plus de 10 ans.
Le problème dont je parle aujourd’hui
est le suivant. Une responsable d’AdP avait un gros modèle pour analyser,
durant la journée, le nombre de piétons – minute par minute – à plusieurs
endroits sensibles de l’aéroport. Ce modèle faisait plus de 40 Mo. Quand on l’ouvrait,
il plantait Excel une fois sur deux. Quand on le fermait, ou même quand on faisait
des modifications, cela prenait du temps…
Il y avait un certain nombre d’onglets,
avec plusieurs graphes par onglet.
Quand j’ai terminé mon
intervention, bien que j’aie ajouté au modèle initial de nouvelles fonctionnalités,
sa taille était tombée à moins de 10 Mo, et tous les problèmes avaient disparu.
Comment y suis-je arrivé ?
En fait, c’est tout simple… J’ai éliminé tous les graphes de tous les onglets
et j’ai créé un nouvel onglet, avec un graphe unique, mais contenant des menus
déroulants et avec lequel on pouvait générer 8.064 graphes différents.
Je vous propose donc de trouver
une solution de ce genre. Vous avez quatre séries de données, les trois
premières dans un onglet, la dernière dans un autre onglet (photo encadrée de
bleu).
Essayez de créer, sur un troisième
onglet, un graphe contenant un menu déroulant permettant de choisir la série à
représenter. Voici les séries sur lesquelles nous allons travailler, mais rien
ne vous empêche d’utiliser quatre autres séries de votre cru :
6 Commentaire(s):
Bonjour
J'ai un peu simplifié le problème pour le résoudre rapidement en posant toutes les données sur le même onglet, avec la même orientation et la même taille...
Mais en utilisant les nouvelles fonctionnalités d'Excel 365 "dynamic arrays" on peut facilement régler la question :
- un nom pour chaque série,
- une liste déroulante pour choisir la bonne série,
- une fonction indirect pointant sur la cellule contenant la liste déroulante (avec l'aide de la nouvelle fonctionnalité dynamic arrays qui affiche alors la plage complète)
- et un graphique pointant sur la plage dynamique...
Pas une ligne de macro... une solution comme je les aime !
Bon, j'ai simplifié... mais la direction de travail me semble bonne par sa grande simplicité. On doit pouvoir l'utiliser pour des données sur plusieurs onglets et de forme différente.
Cordialement
jhbf
le fichier partagé pour voir ma solution :
https://1drv.ms/x/s!AgjfK003EUtdgt0cNo4f-nVEAuvmkA?e=aDz5kt
By jhbf, sur 11:12 AM
Très belle solution, jhbf, simple et efficace.
By Derje Boven, sur 10:06 AM
Les "dynamic arrays" ne sont disponibles pour l'instant que pour les Office Insiders.
Bientôt sans doute pour les utilisateurs lambda....
By cduigou, sur 8:44 PM
Bonjour Cduigou.
J'avais effectivement oublié que les "fonctions de tableau dynamiques" n'étaient pas encore officialisées. Mais pourquoi se priver de nouvelles fonctionnalités quand elles existent ? Surtout quand elles sont, c'est le cas pour les "fonctions de tableau dynamiques", une véritable innovation dans le tableur ! On pourrait même dire une révolution (une formule dont l'effet s'affiche sur plusieurs cellules).
Office insiders est gratuit, je n'ai jamais rencontré de problème avec les versions installées. Je ne peux que vous encourager à tester. (Pour peu que la non-comptabilité descendante ne soit pas un handicap majeur).
Cordialement
jhbf
By jhbf, sur 12:42 PM
Bonsoir Jhbf
Sur son ordinateur perso, chacun fait en effet ce qu'il veut (bien sûr que je profite de la version Insider !). Par contre, si vous travaillez en prestation pour une entreprise êtes-vous sûr de pouvoir livrer ? :)))
By cduigou, sur 8:08 PM
Bonsoir Cduigou
Je partage complètement.
Un vrai problème en effet que j'ai rencontré dans ce type de situation (il y a quelques années) : une vraie frustration de devoir penser une solution fonctionnant sur des versions parfois très anciennes d'Excel chez des clients. Surtout quand un seul poste obsolète vous oblige à tenir compte des seules fonctions existantes 10 ans plus tôt !
La volonté de Microsoft de louer un Office 365 mis à jour régulièrement plutôt que de vendre des licences permanentes a finalement du bon pour le développeur de solutions. Il trouvera une base installée plus homogène et toujours dans la dernière version commercialisée.
cordialement
jhbf
By jhbf, sur 6:44 PM
Enregistrer un commentaire
<< Accueil