Mise en forme conditionnelle fleches

Bonjour a tous,

Je rencontre des difficultes concernant la mise en forme conditionnelle de fleches sur mon fichier.

L'ideal serait d'avoir le sens et la couleur des fleches qui changent automatiquement en fonction de la valeur rentree en ligne 4.

Ci joint le fichier.

Merci beaucoup

Bonjour,

Excel propose déjà ce genre de chose, je t'ai joint un exemple pour que tu regardes:

Tu as 4 flèches possibles :

pourcentage inférieur à -50%, flèche rouge vers le bas, pourcentage entre -50% et 0%, flèche orange pointe en bas à droite, entre 0 et 50%, pointe en haut à droite, au delà de 50%, flèche verte vers le haut.

Bonjour,

Merci pour ta reponse!

Cependant j'aimerais avoir les fleches a l'exterieur de la cellule ou le pourcentge se trouve pour pouvoir deplacer ces fleches sur un autre onglet.

Merci,

Re,

Faire apparaître les flèches sur un autre onglet, ce n'est plus de la mise en forme conditionnelle, c'est de la génération de formes par macro à ce rythme

Hi,

Dans ce cas la faut il que je recree un topic ou quelqu'un peut me sortir une macro

Cdtl

Re,

Si tu n'as pas encore crée ton sujet, voici une réponse possible

Merci beaucoup, c'est un bon debut

Est ce possible d'avoir le meme concept sans bouton et avoir les fleches sur un autre onglet

Cdtl,

Bonjour,

Oui, on peut tout à fait appeler ça sans bouton, et faire apparaitre les flèches sur un autre onglet.

Merci,

Aurais tu un debut de code que je puisse essayer dans le fichier ?

Cdtl

Re,

Le code que tu dois utiliser est celui que je t'ai fournis, il faut juste changer quelques petites choses:

    PosGauche = cel.Left + (cel.Width - dimension) / 2
    PosHaut = cel.Top + 20

ça par exemple, si tu veux exporter tes données sur une autre feuille, il faudra voir comment tu positionnes tes flèches, avec quelles informations, il faudra aussi changer ça:

Set forme = ActiveSheet.Shapes.AddShape(msoShapeRightArrow, PosGauche, PosHaut, dimension, dimension)

Ici, on décide d'ajouter la forme dans la feuille active, il faudra mettre une autre feuille, idem pour la suppression des formes:

'suppression formes
For Each forme In ActiveSheet.Shapes
    If Right(forme.Name, 6) = "fleche" Then
        forme.Delete
    End If
Next forme

Enfin, si tu veux pouvoir actionner ta macro via autre chose qu'un bouton, il va falloir réfléchir à comment, via un évènement, via le bouton macro? etc...

Bonsoir,

Merci beaucoup.

J'ai essaye mais je ne maitrise pas encore les macros et les differents code.

Serait t-il possible d'avoir seulement deux couleurs (rouge ou vert) et seulement deux sens (haut si >0, bas si <0)

Et comme dis plus haut, avoir la possibilite de retrouver les diferentes fleches sur un different onglet.

Merci pour votre precieuse aide

Bonjour,

Oui, on peut tout à fait mettre seulement 2 couleurs, et 2 angles, j'ai modifié très légèrement le programme pour faire ça, idem pour mettre les formes sur une autre feuille, je te transmets le fichier et t'invite à essayer de comprendre un peu le code:

Merci beaucoup,

J'ai applique le code sur mon fichier et tout marche parfaitement! J'ai aussi compris le code et sa logique.

Dernier point, est-il possible d'actualiser automatiquement sans passer par un bouton.

Merci a toi

Bonjour,

Oui c'est tout à fait possible, dans l'exemple ci-joint:

J'ai mis un code en plus:

Private Sub Worksheet_Change(ByVal Target As Range)
Call fleches
End Sub

Que tu pourras retrouver dans la feuille Sheet1 dans la fenêtre VBA, ça permet d'appeler le programme à chaque fois qu'il y a un changement dans la feuille "Sheet1", On peut potentiellement restreindre les cellules qui peuvent activer le programme en utilisant :

If not intersect() is nothing then
call fleches
end if

Merci beaucoup, ca commence a ressembler a quelque chose

Dernier point a finaliser:

Sur l'onglet numero 2, les fleches se replacent automatiquement a une certaine place lorsque les valeurs changent, Y-a t-il possibilite de placer les fleches ou on le souhaite (utile pour mon dashboard)

Merci

Re,

Hum oui c'est possible, ici je prenais les cellules de la feuille de départ pour donner la position des flèches, mais on peut très bien prendre d'autres cellules comme source de cette position, on peut même demander à l'utilisateur à partir de quelle cellule on veut mettre les flèches, par contre il faudra que j'en sache un peu plus, tu auras une flèche par colonne c'est ça?

Hello,

J'ai trouve un autre exemple sur le forum qui me permet egalement de faire ce que je souhaite.

Cepandant, je ne suis pas en mesure d'actualiser les fleches automatiquement lorsque je change ma selection dans le slicer.

En PJ le fichier

31pour-perico-v2.xlsm (34.47 Ko)

Bonjour,

Je vois bien que tu as un programme quelque part, mais je ne vois pas ce qu'il fait, aucune flèche n'apparait, c'est normal?

Je suis juste passé très rapidement sur ce sujet sur le forum récemment, mais comme je n'ai pas suivi les échanges...

Re-

On a peut etre une autre alternative:

Est-il possible d'avoir une mise en forme conditionnelle sur les fleches en fonction de la valeur dans la textbox du dessous:

  • Si Valeur dans textbox > 0% alors fleche verte vers le haut
  • Si Valeur dans textbox = 0% alors fleche blanche vers le cote
  • Si Valeur dans textbox < 0% alors fleche rouge vers le bas

En PJ le fichier

Merci pour ton aide et ton temps!!

32pour-perico-v3.xlsx (13.03 Ko)

Re

Je vois ce que tu veux faire par rapport au Dashboard, mais je ne suis pas fan des formes pour contenir les valeurs, on devrait mettre ça dans des cellules pour qu'on puisse faire ça bien, ça dérange si on fait ça?

Rechercher des sujets similaires à "mise forme conditionnelle fleches"