Calendrier Graphique_jauge

Résolu

Bonjour

je veux réaliser une calendrier sous forme graphique jauge je cherche l'astus ou l'idée pour mettre l'indicateur a la

date du jour voici le fichier :

https://www.cjoint.com/c/LHpoxzDmb8w

merci

30 réponses

Résumé de la discussion

Réalisation d'un calendrier sous forme graphique en jauge dans Excel et recherche d'une méthode pour afficher la date du jour, avec un fichier partagé et des liens d'exemples. Plusieurs intervenants proposent d'étiqueter les mois et de calculer le nombre de jours dans l'année, tandis que d'autres préconisent un code VBA utilisant OnTime pour actualiser automatiquement le graphique. Des défis portent sur les années bissextiles et le volume de séries (365 ou 366) à traiter, avec des conseils sur l'initialisation, l'ouverture du fichier et le paramétrage des constantes. Pour contourner l'explosion du nombre de séries, certains suggèrent de limiter le graphique à des plages mensuelles ou d'utiliser des barres conditionnelles plutôt que 365 séries, afin de rester performant.

Bobot (l’IA à votre service)
  1. Bonjour,

    En C12 il est impératif d'avoir l'année

    ensuite les données sont automatique, en C27 se calcule le nombre de jour dans l'année pour prendre en charge les année bissextiles 

    dans les cellules C15:C26 l'année divisée par le nombre de mois

    En C29 le nombre de jour écoulé dans l'année en cours

    https://www.cjoint.com/c/LHpsT25KLKF


    1. Re,

      l'urgent est fait, l'impossible est en cours, pour les miracles il faut patienter.

      Non il est impossible de couper avec un niveau acceptable une série avec deux couleurs pour coloriser jusqu'à la date, ou il ne faut pas faire un graphique pour douze mois mais pour 365 jours en moyenne en fonction des années bissextiles ce qui fait 365 série à traiter et deux pages de code VBA.

      en attendant tu peux jouer avec les deux boutons provisoires ou le bouton Mise à jour.

      Pour l'automatisme à l'ouverture cela n'est pas un problème et fera l'objet du traitement final

      https://www.cjoint.com/c/LHqoRQnV3IF


      1. Re,

        Pour le fun je suis sur ton fichier avec 365 voir 366 séries pour les  années bissextiles qu'il faut traiter par tranche de 28, 30 et 31 série en fonction des mois, pour l'instant il ne plante pas mais bonjour le code a reproduire, mais c'est curieux

        on verra demain


        1. Re,

          un premier jet de ce qui est possible de faire avec 365 séries dans le graphique et effacement des couleurs des jours écoulés.

          par contre on perd les étiquettes automatiques des mois ou les faire manuellement

          https://www.cjoint.com/c/LHrl0w3pJ5F


          1. Re,

            Et oui Excel est très puissant et fait à peu près tout sauf les frites.

            pour les trimestres sur le graphique actuel non ce n'est pas possible parce que les graphiques s'empilent exactement les uns sur les autres, donc soit on ne verrait que celui des mois ou des trimestres. le graphique de l'aiguille ne masque pas celui des mois parce qu'il n'a pas de couleur seulement l'aiguille en noir.

            Et puis déjà avec 367 séries pour le premier graphique + 3 séries pour le graphique aiguille Excel est joueur jusqu'à un point mais il va finir par ne plus aimer et planter.

            ou peut être cette dernière solution

            https://www.cjoint.com/c/LHro23A1ZLF


            1. Re,

              Si tu repasses par ici, ta demande m'a incité d'aller plus loin en automatisant entièrement le fichier.

              j'ai laissé les deux boutons pour jouer avec les codes mais pour une entière automatisation, dans ,la Thiswokbook colle ce code, j'ai retardé de 02 secondes l'exécution du code pour permettre à Excel l'ouverture sans problème du fichier, si ton système le permet tu peux réduire ce temps à 01 seconde.

              Private Sub Workbook_Open()
              Application.OnTime Now + TimeValue("00:00:02"), "Mise_à_Jour"
              End Sub

              tu peux supprimer les boutons et le code Initialise uniquement

              https://www.cjoint.com/c/LHtlp6w7myF


              1. Re,

                Tu es inépuisable, il faut nommer chaque étiquette et les masquer en fonction du mois en cours je regarde dès que j'ai une minute


                1. Re,

                  pour ta première question, le segment du 03/03/2024 se coloriserait uniquement que lorsque le calendrier commence au 1er janvier 2024, si c'est ça, la réponse est oui

                  Pour la deuxième question, en théorie c'est oui, par contre il faut que je teste avec éventuellement un décalage dans les exécutions des codes pour ne pas saturer le système ce qui conduirait au plantage d'Excel


                  1. Re,

                    Après réflexion, je reviens sur le sujet;

                    Pour faire apparaitre le segment 03/03/2024 lorsque l'année sera courante sera bien 2024 pas de problème, mais en 2024 après le 03/03/2024 ce segment se grise ou reste colorisé exemple en rouge 

                    et après 2024 es ce que tu auras d'autres repère à coloriser ou es ce exceptionnel !

                    pour le deuxième graphique je ne vois pas l'utilité puisque automatiquement le premier graphique passera automatiquement au 1er janvier à 2023 donc le second en 2024 mais ne fonctionnera pas puisque le graphique est conditionné par la syntaxe AUJOURDHUI()

                    donc l'aiguille ne te servira d'aucun repère et restera à zéro, dans ce cas il serait une erreur de surcharger les ressources du système pour rien.


                    1. Re,

                      récupère ton fichier, pour tester, pour tester et éventuellement plus tard reposer un repère j'ai créé en début de macro une constante Taquet = 2024

                      dans les codes Mise à jour et Initialisation remplace 2024 par 2022 et teste le bouton Initialisation puis Mise à jour 

                      ensuite n'oublie pas de remettre 2024 dans les deux constantes

                      https://www.cjoint.com/c/LHuqOxOvvpF


                      1. Re,

                        Dans les deux codes Mise à jour et Initialisation tu verras cette ligne

                         Taquet = 2024

                        remplace 2024 par 2022 pour tester, mais après remet 2024 pour que les deux codes  pour qu'ils s'actualisent en 2024

                         Taquet = 2022


                        1. Bonsoir

                          Oui, c'est exactement ce que je cherche a faire

                          comment est ce qu’on peu ajouter des étiquettes : janv fev ........dec

                          et une mfc sur les jours et les mois passés en vert le reste en rouge et est ce qu’on peu ajouter une autre série pour les trimestres

                          merci beaucoup

                          1. Re,

                            la tu en demandes un peu trop sans passer par du VBA

                            Je regarderai ça demain, parce qu'on superpose deux graphiques et celui des mois est en arrière plan de l'aiguille.

                            A voir ! 


                          2. Ok

                            merci pour votre collaboration et les explications bien detaillées

                            bonne soirée et a demain

                            1. Bonjour

                              Oui c'est presque ça, sauf si on peu colorer jusq'ua la date du jour,et le bouton actualiser s’exécute automatiquement

                              a l’ouverture du fichier et on laisse le bouton réinitialisé.

                              merci

                              1. Bonsoir Mr

                                Bien entendu, l'essentiel est fait

                                je vous remercie pour votre aide et vive comment ça marche

                                bonne soirée

                                • 1
                                • 2