Bonjour tout le monde
C'est possible.
Une Série d'un graphe n'accepte que deux types de données :
- la plage de cellule, exemple : HISTO!$A$2:$A$10
- les plages nommées, exemple : test.xls!SérieY
Pour rendre possible l'auto adaptation du graphe, il faut utiliser les plages nommées (menu Insertion/Nom/Définir). C'est dans cette boîte de dialogue que tout va se passer.
En regardant dans cette boîte de dialogue du fichier joint, il y a 3 noms (Période, VAR1 et VAR2), elles ont comme référence une formule,
=DECALER(BD!$A$2;EQUIV(BD!$F$3;BD!$A:$A)-2;;EQUIV(BD!$F$4;BD!$A:$A)-EQUIV(BD!$F$3;BD!$A:$A))
La fonction DECALER() retourne une plage de cellules, qui est déterminer en fonction de la position de départ, décaler d'un nombre de cellules verticalement. Ce décalage est obtenu par la fonction EQUIV() qui retourne la position d'une valeur. Le dernier argument de la fonction DECALER(), est le nombre de cellules de la plage retournée.
Pour Var1 et VAR2, la formule est pratiquement identique, seul change la référence de la cellule de départ.
Après avoir déterminé les noms, il faut remplacer pour chaque série les plages de cellules, la partie $B$2:$B$102 en VAR1, ne pas oublier la période (2ème argument de la fonction SERIE).
Dans l'exemple ci-joint, il suffit de changer la date de début du graphe en F3, d'indiquer le nombre de jours à graphiquer.
La date de fin est calculée en fonction de ces informations, et le graphe actualisé en fonction de ces dernières informations.
@+Jean-Marie
[file name=ClassGraphExemple.zip size=6866]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/ClassGraphExemple.zip[/file]