IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Graphique dynamique et nom de fichier qui change [XL-2010]


Sujet :

Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2013
    Messages : 28
    Points : 23
    Points
    23
    Par défaut Graphique dynamique et nom de fichier qui change
    Bonjour,

    Je souhaite faire un graphique à partir d'une série de données dont la taille peut évoluer.
    Après quelques recherche j'ai trouvé comme faire un graphique dynamique (sur un forum voisin).

    SA :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(indicateurs!$B$2;0;0;1;NB(indicateurs!$2:$2))
    Dates :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(indicateurs!$B$1;0;0;1;NB(indicateurs!$2:$2))
    Graphique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SERIE(indicateurs!$A$2;'Nom du fichier.xls'!Dates;'Nom du fichier.xls'!SA;1)
    Cela fonctionne très bien mais ne prend pas en compte le faire que le nom du fichier peut évoluer.

    J'ai donc obtenu le nom du fichier courant dans une cellule renommée "nom_fichier" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =STXT(CELLULE("filename";A1);TROUVE("[";CELLULE("filename";A1))+1;SOMME(TROUVE({"[";"]"};CELLULE("filename";A1))*{-1;1})-1)
    J'insère cette référence "nom_fichier" dans la fonction du graphique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SERIE(indicateurs!$A$2;nom_fichier!Dates;nom_fichier!SA;1)
    Mais cela génère une erreur :
    Référence non valide. La référence doit renvoyer à une feuille de calcul ouverte
    Je suppose qu'il me manque un élément pour faire référence au nom du fichier directement ?

    Pourriez-vous m'aiguiller s'il vous plait ?

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    1. Nommes par Dates (de portée feuilles: Dans le gestionnaire de noms, choisi dans la liste Zone, la feuille indicateurs)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(indicateurs!$B$1;0;0;1;NB(indicateurs!$2:$2))
    2. Nommes par SF de la même manière
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(indicateurs!Dates;1;0)
    Enfin, dans ta série, tu n'auras pas besoin du nom du classeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SERIE(indicateurs!$A$2;indicateurs!Dates;indicateurs!SF;1)

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2013
    Messages : 28
    Points : 23
    Points
    23
    Par défaut
    Je te remercie pour ta réponse rapide.

    J'ai repris ces fonctions mais dans la fonction du graphique la dernière référence (indicateurs!SF) est systématiquement remplacée par le nom du fichier quand on valide la formule .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SERIE(indicateurs!$A$2;indicateurs!Dates;indicateurs!SF;1)
    Autre problème : quand je n'ai plus aucune données (ni intitulés ni valeurs), excel génère une erreur :
    une des formules de cette feuille de calcul contient une ou plusieurs références externes non valides.

  4. #4
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    1. Pour éviter l'erreur quand aucune donnée, remplace la définition du nom Dates par celui ci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(Indicateurs!$B$1;0;0;;MAX(NB(Indicateurs!$2:$2);1))
    SF reste le même
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(Indicateurs!Dates;1;0)
    Pour la question de la portée des noms, regardes la figure ci-après

  5. #5
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Janvier 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2013
    Messages : 28
    Points : 23
    Points
    23
    Par défaut
    Oh, j'avais bien défini la zone pour l'un des noms mais pas pour l'autre ! Une fois cela redéfini correctement je n'ai plus eu de problème de référence au nom du fichier courant .
    La fonction MAX fonctionne parfaitement pour gérer le cas de l'absence de valeurs .

    Merci beaucoup mercatog !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Maj fichier qui change de nom
    Par maximilien59 dans le forum VBA Access
    Réponses: 5
    Dernier message: 13/09/2012, 08h53
  2. [HttpUnit] upload file - le fichier qui change de taille
    Par Yannos94 dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 05/09/2007, 14h29
  3. Réponses: 2
    Dernier message: 27/04/2007, 13h03
  4. Récupérer le nom du fichier qui appelle une fonction
    Par DeezerD dans le forum Langage
    Réponses: 2
    Dernier message: 24/03/2007, 14h37
  5. [C#] Récupérer le nom du fichier qui a lancé l'application
    Par etiennegaloup dans le forum Windows Forms
    Réponses: 1
    Dernier message: 02/04/2006, 16h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo