Déplacer automatiquement forme sur graphe en fct d'une cellule

Annetoine

XLDnaute Nouveau
Bonjour à tous,

Désolé si le sujet existe déjà quelque part, mais à vrai dire je ne savais pas vraiment comment chercher...

Prenons cette image (que je pourrais créer en graphe ou autre, à voir) :
Sans titre.jpg

J'aimerais que les deux formes au dessus (la verte et la grise) se place automatiquement sur la bonne valeur du dessin en fonction d'une valeur de cellule (et si possible, que la valeur dans la forme se modifie automatiquement aussi...)

Avez-vous des idées ?

Merci !!
 

Pièces jointes

  • Sans titre.jpg
    Sans titre.jpg
    28.1 KB · Affichages: 130
  • Sans titre.jpg
    Sans titre.jpg
    28.1 KB · Affichages: 116

Annetoine

XLDnaute Nouveau
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Effectivement mécano41, ça serait quelque chose dans ce genre dont j'aurais besoin.
Je n'arrive par contre pas à l'adapter à mon problème...

Sur le dernier document de Efgé, j'ai réussi à adapter l'échelle à mes besoin, tout fonctionne sauf le marqueur, je n'arrive pas à avoir quelque chose de correct....

Il me faudrait quelque chose comme sur la 1ère image que j'ai posté !
 

mécano41

XLDnaute Accro
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Voici une version possible...

Les cellules jaunes et les diverse parties du dessin sont nommées.

Tu peux étirer l'ensemble de l'échelle si nécessaire. Après modif de l'une des cellules jaunes, les curseurs reprendront une position correcte.

Cordialement
 

Pièces jointes

  • Curseurs1.xlsm
    99.9 KB · Affichages: 91

Annetoine

XLDnaute Nouveau
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Euh là franchement, je dis chapeau ! C'est vraiment parfait.
Je n'arriverai plus à étudier la chose en détail ce soir, mais j'essayerai de regarder le code demain pour réintégrer ça dans ma feuille excel.

Un grand merci !
Cordialement.
 

Efgé

XLDnaute Barbatruc
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Bonjour Annetoine , mécano41 :)

Sauf à utiliser une image, et donc une macro, comme l’a fait mécano41, il me semble difficile de conserver les codes couleurs dans un axe de graphique.
En pièce jointe une proposition en Noir et Blanc :D

Deux graphes cohabitent. Un graph en ligne pour l’axe X principal (valeurs et catégories), un graph nuage de point pour les séries Objectifs et Résultats. Les étiquette de séries ont chacune un format personnalisé et les points ont des barres d’erreurs pour « la tige » de l’étiquette.

Tous les axes sont bloqués.

Cordialement
 

Pièces jointes

  • Test.xls
    43 KB · Affichages: 54
  • Test.xls
    43 KB · Affichages: 51
  • Test.xls
    43 KB · Affichages: 53

Annetoine

XLDnaute Nouveau
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Bonjour Efgé,

Effectivement, pas mal non plus ta proposition !
Bon moi, il me le faut absolument en couleur donc la version macro. Par contre, ta version devrait me permettre de résoudre un autre problème que j'avais.
Un grand merci !

Je ne comprend par contre pas comment, dans la version de mécano, sont attribués des noms aux cases (objectif et résultat) ainsi qu'aux objets (échelle).
En effet, si je veux modifier un peu la forme de l’échelle en ajoutant quelque chose (et en groupant le tout), la macro ne fonctionne plus (j'en déduis donc que la forme ne correspond plus au nom donné au départ, ce qui empêche de faire tourner la macro?)?

Edit : Autant pour moi, j'ai trouver comment nommer une cellule... Je cale pour nommer un objet par contre !
 
Dernière édition:

Efgé

XLDnaute Barbatruc
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Re
A y regarder de plus près, puisque tout est bloqué sauf les objectifs et les résultats, on peux colorer un peu tout ça :D
282077d1378458825-deplacer-automatiquement-forme-sur-graphe-en-fct-dune-cellule-sans-titre.jpg

Cordialement
 

Pièces jointes

  • Sans titre.JPG
    Sans titre.JPG
    20.3 KB · Affichages: 122
  • Test(2).xls
    47 KB · Affichages: 48
  • Sans titre.JPG
    Sans titre.JPG
    20.3 KB · Affichages: 113
  • Test(2).xls
    47 KB · Affichages: 48
  • Sans titre.JPG
    Sans titre.JPG
    20.3 KB · Affichages: 92
  • Test(2).xls
    47 KB · Affichages: 46
Dernière édition:

Annetoine

XLDnaute Nouveau
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Je pensais bien m'en sortir niveau graphique, mais je vois que j'ai encore beaucoup de progrès à faire :p

Et pour nommer un objet sais-tu comment faire ? Car j'en aurais également besoin dans pas mal de macro, histoire de simplifier le tout...

Cordialement.
 

mécano41

XLDnaute Accro
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Bonjour Annetoine et Efgé,

L'échelle fixe est composée de :

- une série de 21 zones de texte portant 0,1...2,1
- cinq zones de texte (de largeurs respectives 6 fois, 3 fois, 3 fois, 3 fois et 6 fois la largeur d'une zone ci-dessus) portant les mentions "Excellent", "Bon"...etc avec couleurs dégradées
- 4 traits verticaux délimitant les zones ci-dessus
- un rectangle entourant tout cela. Je n'ai pas pu mettre de coins arrondis à cause de la couleur des autres rectangles

Ces éléments sont ensuite groupés et l'ensemble est appelé "Echelle" (on sélectionne le groupe qui doit s'appeler "Groupe1" par exemple ;ce nom est visible tout à gauche de la barre de formules. Il faut cliquer sur ce nom, l'effacer et entrer "Echelle" à la place)

Le curseur "Objectif" est composé de :

- un rectangle à coins arrondis avec couleur dégradée "gris"
- une zone de texte sans bordure ni fond qui est nommée "TxtObj"
- une flèche vers le bas

Ces éléments sont ensuite groupés et l'ensemble est appelé "Objectif1" par la même méthode que pour l'échelle

Le curseur "Résultat" est composé de :

- un rectangle à coins arrondis avec couleur dégradée "vert"
- une zone de texte sans bordure ni fond qui est nommée "TxtRes"
- une flèche vers le bas

Ces éléments sont ensuite groupés et l'ensemble est appelé "Resultat1" par la même méthode que pour l'échelle

Pour toute modification du dessin, il faut refaire ces opérations...sauf, comme je l'avais signalé, si tu étires ou contractes la forme.

Autres points :

Les cellules jaunes sont nommées "Objectif" et "Resultat"

Pour retrouver une forme dans le code :

ActiveSheet.Shapes.Range(Array("Echelle")).Left par ex. donne la position du début de la forme "Echelle"


Attention aux noms : en VBA on évite de donner des noms avec lettres accentuées donc tous les noms que j'ai utilisés pour nommer de formes ou des cellules sont sans accent


Cordialement
 
Dernière édition:

Annetoine

XLDnaute Nouveau
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Bonjour mécano !

Merci beaucoup pour tes explications précises, j'ai compris le bon déroulement du code et devrait pouvoir le transférer correctement dans ma feuille de calcul.
Le dernier soucis que j'ai, c'est que j'ai voulu modifier l’échelle en ajouter une case "0,00".
J'ai voulu faire cela car je trouvait que l'échelle que je vous ai mis au début n'est pas très clair : le but ici est donc de mettre le curseur au début de la case pour chaque valeur (et ainsi, avoir une valeur de 0,75 au milieu de la case 0,70 par exemple, plus compréhensif !)

J'ai donc refait l'objet selon ta méthode et l'ai renommé, mais quand je vais vers les extrémité de l'échelle, la flèche se décale et n'est plus au bon endroit.
Est-ce que cela ne viendrait pas du fait que du coup, ce n'est plus "symétrique"?

Encore merci pour ton aide.

Edit : Effectivement ça avait l'air d'être ça, en modifiant les catégories de telle sorte que la répartition soit de nouveau comme avant, ça marche. Mon échelle s'arrête du coup à 2,00 et plus 2,1.
Par contre, si je rentre par exemple 2,1, l'étiquette s'emballe et part carrément après l'échelle !

Je dois juste encore trouver une solution pour que si le résultat est supérieur à 2,00, l'étiquette se mette complètement à droite mais affiche quand même le bon résultat :) Et là ça sera parfait !
 
Dernière édition:

Annetoine

XLDnaute Nouveau
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Exactement... Donc si je récapitule :
- Tu as supprimé la fonction avec le "42" pour que le curseur se mette en début de case,
- Tu as modifié un coefficient pour que les curseurs gardent leurs places tout au long de l'échelle. Pourrais-tu m'expliquer très rapidement à qui servent ces coefficients et comment tu les as calculés ?

J'ai de mon côté réussi à bloquer la forme "Résultat" pour qu'elle reste en fin d'échelle si résultat plus grand (tout en affichant la bonne valeur). J'ai ajouté une autre case résultat au final (la tienne étant incrémentée par l'autre via une condition SI)...

Bon, vu que la case est incrémentée automatiquement, l'échelle ne se met forcément pas à jour (ce qui arrivera dans ma feuille de calcul) il faudra que je pense à inscrire l'objectif après, pour faire tourner la macro.

Edit : Effectivement, c'est ce que tu viens de me dire ^^
 

mécano41

XLDnaute Accro
Re : Déplacer automatiquement forme sur graphe en fct d'une cellule

Voici une version avec exemple de mise à jour des curseurs sur un recalcul de la feuille.

Pour ta question : le coeff. vient de l'opération de proportion :

(dans la version précédente, on avait 21 cases donc on avait 2,1 pour correspondre "en valeur")

- la longueur totale, c'est pour 22 cases donc une valeur de 2,2. On divise donc par 2,2 pour avoir la longueur pour 1 unité de valeur
- on veut la longueur pour la valeur "Obj", on multiplie par Obj unités de valeur

Cordialement
 

Pièces jointes

  • Curseurs3.xlsm
    19.9 KB · Affichages: 93

Discussions similaires

Statistiques des forums

Discussions
312 500
Messages
2 089 013
Membres
104 004
dernier inscrit
mista