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

Conception Discussion :

Mise en forme conditionnelle - barre de donnée dégradée


Sujet :

Conception

  1. #1
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut Mise en forme conditionnelle - barre de donnée dégradée
    Bonjour à tous,

    Je suis à nouveau confronté à un problème. J'ai mis en place une mise en forme conditionnelle de type "barre de donnée", jusque la rien de compliqué mais j'aimerai un dégradé de couleur.
    Pour faire simple de 0 à 50% j'aimerai que la barre soit en orange, et de 50 à 100% en vert, avec si possible un dégradé.

    J'ai cherché partout mais impossible de trouver une réponse à mon besoin, c'est pourquoi je m'en remet à vos conseils.

    Je vous met en pièce jointe un modèle de ce que j'ai actuellement (à gauche), et un résultat fais à la main de ce que je souhaiterai.

    Merci d'avance pour votre aide

    MFC barreDonnee.zip

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Au lieu de passer par une mise en forme conditionnelle, tu passes par un graphe de type barre et tu pourra définir un dégradé comme motif en choisissant la couleur de début et de fin.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    Merci pour ta réponse.
    Je ne peux pas suivre ton conseil car je souhaite avoir le résultat dans une cellule

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par John Parker Voir le message
    Je ne peux pas suivre ton conseil car je souhaite avoir le résultat dans une cellule
    L'un n'empêche pas l'autre (voir ci-dessous)
    Nom : Graph dégardé.jpg
Affichages : 4543
Taille : 24,5 Ko
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    C'est exactement ce que je veux!

    Comment as-tu fait cela?

  6. #6
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Tu fais un graphe de type barres.
    Tu mets l'échelle des abscisses avec un tout petit incrément (pour qu'il n'y ait pas trop d'espace entre la plus grande barre et la droite).
    Tu mets l'échelle des ordonnées en ordre inverse.
    Tu supprimes tous les quadrillages, axes et étiquettes.
    Tu mets ma zone de graphique sans trait ni remplissage.
    Tu mets le remplissage des séries de données en dégradé.
    Tu augmentes la largeur des barres.
    Tu augmentes la taille de la zone de graphique pour occuper toutes la zone de traçage.
    Tu mets la zone de graphique à la taille des cellules.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  7. #7
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    j'ai suivi tes instructions.

    J'ai du mal avec le dégradé. C'est vraiment possible de faire en sorte que
    - de 0 à 50% : orange (+ foncé au + clair)
    -de 50 à 100% : vert (+ clair au + foncé)

    ?

    Encore merci pour ton aide

  8. #8
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par John Parker Voir le message
    jJ'ai du mal avec le dégradé. C'est vraiment possible de faire en sorte que
    - de 0 à 50% : orange (+ foncé au + clair)
    -de 50 à 100% : vert (+ clair au + foncé)
    Non (du moins pas à ma connaissance avec un Excel 2013).
    Du moins, pas en automatique (ou alors, en passant par une macro en VBA mais ça ne serait pas simple).
    Je n'avais pas compris ce que tu voulais dire par "dégradé".
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  9. #9
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    Oui j'avais vu que c'était possible en passant par du VBA.

    J'avais même trouvé ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Private Sub Worksheet_Change(ByVal Target As Range)
         Target.FormatConditions.AddDatabar
       With Target.FormatConditions(1)
             .MinPoint.Modify newtype:=xlConditionValueNumber, newvalue:=0
             .MaxPoint.Modify newtype:=xlConditionValueNumber, newvalue:=100
                Select Case Target.Value
         Case 0 To 20
            .BarColor.Color = vbRed
        Case 21 To 60
             .BarColor.Color = vbBlue
         Case 61 To 100
             .BarColor.Color = vbGreen
        End Select
        End With
     End Sub
    Mais je n'ai jamais réussi à l'adapter...

  10. #10
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 420
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 420
    Points : 16 264
    Points
    16 264
    Par défaut
    Bonjour

    Ce code ne fait pas de dégradé : il met juste une barre de couleur différente selon la valeur de la cellule.

    Le mieux que je puisse obtenir selon tes contraintes, en jouant sur 2 colonnes
    Nom : MFC_barres2C.png
Affichages : 5056
Taille : 2,6 Ko
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  11. #11
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    Merci. Apparemment ma demande paraît impossible à réaliser.
    Donc si je voudrai simplement que ma barre de donnée change complètement de couleur (0-50 : orange ; >50 : vert), comment adapter ce code?

  12. #12
    Membre confirmé Avatar de graphikris
    Homme Profil pro
    Pas tres doué
    Inscrit en
    Décembre 2012
    Messages
    1 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Pas tres doué
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 214
    Points : 522
    Points
    522
    Par défaut
    A prendre ou a laisser, si tu fais ça sur 3 colonnes en A : dégradé Vert vers Jaune / en B : dégradé Jaune vers Orange / en B : dégradé vers rouge et ton résultat va se coller dans la bonne colonne. Moi je l'ai fait par rapport à des délais. Ici j'ai laissé en blanc volontairement mais tu passes l'écriture de la meme couleur que le fond quand tu as ZERO.
    Pièce jointe 206607

  13. #13
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    Merci pour ta réponse.

    Dans mon cas j'ai besoin de voir la progression (barre de donnée) qui doit correspondre à mon pourcentage, par exemple, si je suis à 75%, ma barre doit faire les 3/4 de sa taille maximum, sachant qu'elle doit être orange jusqu'à 50% puis vert pour les 25% restant. Le top étant, en effet, d'avoir un dégradé/ transition entre l'orange et le vert.

    Tu penses que cela est possible avec ta méthode?

  14. #14
    Membre confirmé Avatar de graphikris
    Homme Profil pro
    Pas tres doué
    Inscrit en
    Décembre 2012
    Messages
    1 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Pas tres doué
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 214
    Points : 522
    Points
    522
    Par défaut
    non pas possible, pour moi j'ai juste fait un degradé en arriere plan, ce n'est pas dynamique.
    Dsl

  15. #15
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Pour que ça marche, il faudrait qu'une macro sur l'évènement Change de ta Worksheet soit activée à chaque saisie et que, à chaque fois, elle modifie la couleur de la barre correspondant à la donnée modifiée. Ce serait plutôt galère à faire pour un résultat de peu d'intérêt.

    Par contre, ce que tu pourrais faire, c'est mettre une double mise en forme conditionnelle : une qui présente des barre de couleur unie (comme tu l'as fait) et une autre qui présente des icones de couleur.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  16. #16
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    Je ne vois pas bien ce que ça pourrait donner?

  17. #17
    Membre régulier
    Inscrit en
    Avril 2011
    Messages
    465
    Détails du profil
    Informations forums :
    Inscription : Avril 2011
    Messages : 465
    Points : 97
    Points
    97
    Par défaut
    Dans la même idée.

    Admettons que je fixe :
    -seuil minimal à -5%
    -seuil maximal à +5%

    Actuellement je suis à 3%

    Est ce qu'il serait possible d'après vous que ce soit orange de -5% à 0 (médiane), puis vert de 0 à 3% ?

    peut être en passant par plusieurs cellules?

  18. #18
    Membre confirmé Avatar de graphikris
    Homme Profil pro
    Pas tres doué
    Inscrit en
    Décembre 2012
    Messages
    1 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Pas tres doué
    Secteur : Conseil

    Informations forums :
    Inscription : Décembre 2012
    Messages : 1 214
    Points : 522
    Points
    522

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/06/2015, 18h45
  2. Réponses: 2
    Dernier message: 31/03/2015, 15h13
  3. Mise en forme conditionnelle des données d'un graphique
    Par Lost_in_VBA dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/07/2011, 13h44
  4. Réponses: 7
    Dernier message: 19/06/2011, 05h56
  5. Réponses: 3
    Dernier message: 03/07/2008, 10h48

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