Sos.formule exel date+coloration de cellule

Bonjour,
je suis completement perdu ...
je souhaite trouver une formule qui pourrai colorier ou griser une case :
-si la date décheance est inferieur à 15 jour par rapport à la date d'aujourd'hui (ex: on est le 10/10/07,donc les dates jusqu'au 25/10/07)
et si la case règlement est tjrs vide.
la coloration de la case dépénd donc de 2 facteurs dont la la date configuré ds l'ordi... impossible pour moi
si quelqu'un avait la solution se serait super.
merci d'avance
Configuration: Windows Vista
Internet Explorer 7.0

23 réponses

Résumé de la discussion

La question porte sur colorier une cellule Excel lorsque la date d'échéance est proche (dans les 15 jours) et que la case règlement est vide, l'exemple du 10/10/07 visant le 25/10/07. Les propositions clés utilisent une mise en forme conditionnelle avec une formule combinant ET et ESTVIDE et en comparant la date à AUJOURDHUI via une cellule F1 contenant =AUJOURDHUI(), par exemple =ET(ESTVIDE($E13);$D13>$F$1-15). En pratique, certains notent des difficultés liées à des déplacements de lignes ou des mises à jour de AUJOURDHUI(), et suggèrent de tester soigneusement les références ou d’utiliser une approche SI dans certains cas.

Bobot (l’IA à votre service)
  1. Contributeur
    Allez on y va doucement et rassurez vous, on ne vous prend pas pour une débile,loin de là, mais pour une débutante et j'en suis pratiquement un aussi.
    Par ailleurs, ce n'est pas moi qui ai demandé votre fichier, car je pense que vous allez vous en sortir toute seule sans problème.C'est meilleur pour vous
    Tout d'abord, j'ai supposé que vous aviez réservé la colonne E pour donner l'information payé ou non, car il faut bien le faire quelque part!
    J'ai donc supposé que vous mettiez un texte ('ou autre chose)dans cette colonne E au moment du réglement:
    Donc, dans le détail, et attention de ne rater aucune parenthèse, aucun $ aucune virgule ( à la limite, copier la formule et coller la
    Dans F1 rentrez
    =AUJOURDHUI()
    Et n'y toucher plus, ça marche tout seul à minuit

    A) sélectionnez toute la plage de D13 à D36

    B) allez dans la barre des tâches au dessus de la feuille,cliquez sur format
    C) Un boite s'affiche, à sa droite un menu condition1
    Dans ce menu, sélectionner "la formule est"
    Rentrer dans la plage à coté, toujours dans la boite la formule suivante, au quart de point virgule et parenthèse près, j'insiste:
    =ET(ESTVIDE($E13);$D13>$F$1-15)
    Cliquez sur Format
    Dans la boite, sélectionnez "Motif" rouge
    Cliquez sur OK
    Cliquez sur le OK de la boite

    Maintenant, lorsque votre cellule de la colonne E sera vide et que la date de la colonne D sera supérieure à aujourd'hui-15 La cellule correspondante de la colonne D "s'allumera" en rouge

    Une fois que vous aurez fait cela, vous pourrez l'adapter à n'imorte quel format
    Il suffit de réaliser à quoi servent les indicateurs de cellule et les ponctuatioins dans la fomule pour les changer à la demande
    Pour prolonger en dessous de D36, par exemple, il suffit de copier D36, sélectionner D37 à D-- et clic droit, Collage spécial, format, et le tour est joué.
    Bien évidemment j'ai testé cette solution (qui marche) avant de vous la donner.
    Bien codialement. Bon courage
    2
    1. Contributeur
      Re vaucluse,

      Juste un petit plus : tu peux integrer Aujourdhui() dans ta formule, ça reste lisible et ça évite la référence à $F$1.
      eric
      0
  2. Contributeur
    Pas facile Laure, entre les infèrieurs, les supé
    rieurs, les avant et les après, mais on a s'en sortir.
    Indépendemment de tout ce qui a été écrit, vous voulez griser une cellule lorsque l'échéance est à moins de 15 jours et le montant non réglé.
    Donc vous pouvez appliquer la formule proposée par Eric dans son message 24, soit:
    =ET(ESTVIDE($E13);$D13<AUJOURDHUI()+15)

    ou vous reprenez mon message 17 ou la formule tait:
    =ET(ESTVIDE($E13);$D13>$F$1-15)
    il faut remplacer la fin par:;$D13<$F$1+15)_ça revient au même

    Dans tous les cas, respectez bien le process de mon message 17 pour implanter votre formule dans la boite de mise en forme
    A tout hasard: si vous demande un format grisé dans la boite, il ne faut pas bien entendu que vos cellules soient grisèes au départ!

    BCRDLMNT

    0
    1. Désolé, je ne travaille pas le jeudi, je n'ai donc pas pu répondre a vos
      > précision. effectivement j'ai besoin que la date se grise 15 jours avant la
      > date d'échéance.enfin quand je rentre une date si elle est inferieur a moins
      > de 15 jours à la date d'aujourd'hui j'ai besoin q'elle se grise si elle est
      > inferieur a 16 alors elle ne doit pas se griser.j'espère que c'est plus
      > clair. merci a tt de suite
      0
      1. Contributeur
        Tu me mes un doute Eric, a moi aussi, mais effectivement, pour moi il ya deux options contradictoires:

        Soit elle veut être prévenue 15 jours avant l'échéance, c'st la première partie de sa phrase, et c'est ma formule la bonne, mais ça ne colle pas tout à fait, c'est vrai, à son exemple.
        Soit elle laisse 15 jours de battement après l'échéance et dans ce cas c'est toi qui a raison?
        Pas très clair, si on lit "si la date d'échéance est infèrieure de 15 jours à la date d'aujourd'hui "qui dit un peu le contraire de l'exemple!
        L'exemple par contre, te donne raison.

        Ce serait simpa que Laure vienne nous dire ce qu'elle en pense--
        BCRDLMNT
        0
        1. Contributeur
          C'est bien l'exemple qui m'a mis le doute...
          eric
          0
      2. Contributeur
        Re vaucluse,

        Je viens de relire un peu plus en détail et je me demande si en fait tu ne fais pas le test inverse.
        "je souhaite trouver une formule qui pourrai colorier ou griser une case :
        -si la date décheance est inferieur à 15 jour par rapport à la date d'aujourd'hui (ex: on est le 10/10/07,donc les dates jusqu'au 25/10/07)"

        et donc plutôt =ET(ESTVIDE($E13);$D13<AUJOURDHUI()+15) au lieu de =ET(ESTVIDE($E13);$D13>$F$1-15) ?
        Je n'ai pas contrôlé à fond ni tout relu mais j'ai un doute.

        Sinon effectivement le ;vrai;faux) est totalement inutile. Sans doute un vieux souvenir d'excel 2000 que je n'ai jamais rafraichi. Tant mieux ça fera moins de saisie :-) merci
        Pour le SI je préfère quand même le laisser pour des raisons de lisibilité

        eric
        0
        1. Contributeur
          C'est OK Eric j'ai vérifié et ça marche

          Et meme mieux que ça, car la condition est bien déja,comme je le pensais, incluse dans le principe même de la mise en forme:
          En fait votre formule marche très bien dans ce cas même si l'on enlève le SI et à la fin;VRAI;FAUX
          Par contre:
          _d'une part il faut bien garder toutes les parenthèses
          _d'autre part pour le problème de Laure (au cas où), elle marche à l'envers et annule la couleur quand la colone à pointée et vide.
          (pour testé, j'ai remplacé par ESTVIDE(B12) et ça marche encore!!

          Mais tout cela n'enlève rien à la classe de la solution
          CRDLMNT, bonne zournée, comme dirait une amie commune
          0
          1. Contributeur
            Bonjour vaucluse,

            si si, c'est bien en formule de format conditionnel que j'ai testé, et c'est un copié-collé donc pas d'erreur de transcription.
            eric
            0
            1. Contributeur
              Bonjour Eric
              Je ne voudrais pas vous épuiser sur le sujet, qui n'en vaut pas la peine,mais il me reste une question:
              La formule que vous préconisez marche bien chez moi aussi, même sans vrai ou faux,mais en calcul dans une cellule et pas dans la mise en forme, est ce bien là que vous l'essayez?.Je vais réessayer le SI qui pour moi est superflu dans une mise en forme, comme je l'ai déja écrit...,conditionnelle.
              Ceci dit je vous rejoins un peu sur l'avenir de cette option dans les tableaux évolutifs. Mais elle est très utiles à mon sens sur un tableau d'entrée fixe ou il est possible "d'allumer" les cellules à remplir à partir de la 1° entrée exècutée.
              Bien cordialement
              0
              1. Contributeur
                Je viens de tester, chez moi ça marche avec =SI(ET(A12>AUJOURDHUI()-3;B12<>"");VRAI;FAUX).
                Peu de différences avec la tienne si ce n'est le ...;vrai;faux). Peut-être optionnel (ou un oubli...) je ne sais pas mais qui là a l'air de faire la différence.
                Ceci dit je me méfie bcp des formats conditionnels qui demandent trop de discipline de la part de l'utilisateur. 3 cellules bien alignées avec le format bien mis, au bout de 3 mois un aura inséré une cellule au dessus, un autre supprimé une autre cellule dans la colonne d'à coté et résultat tout est décalé et ne veut plus rien dire.
                Et même sur une seule colonne, là je fais référence à B12, j'insère une cellule au dessus de ma 1ère date et je me retrouve avec =SI(ET(A13>AUJOURDHUI()-3;B12<>"");VRAI;FAUX).
                Bon pas toujours grave mais pas fiable, les consignes données sont si vite oubliées et la référence à la colonne voisine est invisible si on ne va pas la chercher.
                Pratique pour un usage ponctuel, à éviter sur les feuilles qui doivent vivre plusieurs mois ou mettre un message disant d'insérer ou de supprimer simultanément sur les colonnes concernées
                bonne soirée
                eric
                1
                1. Contributeur
                  C'est sans doute vrai Eric, mais avec les tests que j'ai fait et sans doute les erreurs d'écriture qui s'y rapportent, je n'ai pas réussi à faire marcher AUJOURDHUI()-15 dans la boite de mise en forme conditionnelle.
                  pour tout dire, j'ai écris à la pace de >$F&1-15) : (AUJOURDHUI()-15)) mais ça ne marche pas?
                  Est ce que la mise forme reconnait la mise à jour de AUJOURDHUI?

                  CRDLMNT
                  0
                  1. 1)écheance:D13
                    2)d13à d36
                    3)montant:F13 (f13 à f36)
                    4)F1
                    5) montant est saisie manuellement

                    je suis désolé .vous devez vraiment me prendre pour une débile mais ce n'est vraiment pas ma spécialité, avant la semaine dernière je ne savais meme pas rentré une formule de somme!

                    j'ai joint le document dans le lien que vous m'avez envoyé mais ça n'a visiblement pas fonctioné.
                    0
                    1. Contributeur
                      Ca j'avais bien compris,pour ce qui me concerne et je pense que votre problème est très simple, mais pour la bonne compréhension des info que l'on pourrait vous transmettre, il nous faut des info pour vous donner la solution qui colle exactement à la configuration de votre format donc je repose ma question:
                      1°)Quelle est votre cellule échéance ?(lettre de colonne, N° de ligne?:
                      2°)Si plusieurscellules en colonne, N° ligne de la 1° et de la derniére(s'il n'y a pas de derniére tant pis, ça marche quand même
                      3°)Quelle est la cellule montant?idem:
                      4°)Quelle est la cellule disponible dans laquelle vous pouvez rentrer la formule=AUJOURDHUI()(qui bien entendu, se met à jour automatiquement.Une seule cellule suffit pour tout un tableau:
                      La cellule montant est elle remplie manuellement ou est elle le résutat d'une formule?
                      Quand vous aurez documenté ces quelques points, je pense pouvoir régler rapidement votre problème.
                      CRDLMT
                      0
                      1. DONC CE QUE j'aimerai c'est : que la case échéance (oùje rentre des dates) se grise seulement si la date est de 15 jours avant la date d'aujourd'hui et seulement si la case "montant" est vide .pour que je puisse verifier 15 jours avant la fin de l'échéance les réglements de mes créanciers qui n'ont pas renvoyé leurs traites.merci mille et une fois
                        0
                        1. Contributeur
                          --
                          Science sans conscience n'est que ruine de l'Ame
                          0
                          1. Contributeur
                            Pouvez vous nous dire si la case que vous voulez colorer est réellemnt vide ou si elle contient une formule
                            Ou rentrer vous la formule ET....
                            Pour ma part, j'ai testé ma proposition et elle marche, (voir message 7)si vous voulez, reprenez là pas à pas.Nogaret: je pense qu'il est inutile de rentrer des conditions "Si" dans une mise en forme conditoinnelle
                            Ou alors dites nous:
                            1° dans quelle cellule vous avez rentré la formule=AUJOURDHUI()--
                            2° Dans quelle cellule se trouve la date de référence qui est votre limite
                            3° quelle est la cellule que vous voulez griser
                            4°Dans quelle cellule se trouve la valeur que vous devez rentrer, et si c'st le rulta 'une formule ou d'une entre au clavier et nous vous trouverons rapiement la solution qui va bien.
                            Biencordialement
                            Science sans conscience n'est que ruine de l'Ame
                            0
                            1. rebonjour et merci d'avoir répondu a ma question mais j'ai un vrai souci j'ai renseigné une case avec la date automatique pour simplifié la formule.
                              mais le problème c'est quand je rentre la formule la case se grise quelque soit la date que je rentre qu'elle soit superieur ou inferieur a la date d'aujourd'hui meme si je rentre une date ds 3 mois.
                              ce que j'ai besoin c'est que la date(d13) se grise si la case F13 est vide et seulemnet si la date est 15 jours apres la date d'aujourd'hui .ex: on est le 10/10 , je voudrai que toute les dates jusqu' au 25 /10 soit grises.pourtant quand je fais des essais meme quand je rentre une date en décembre la case se grise.

                              je suis désesperé.je suis en train de perdre ma journée sur cette formule si vous pouviez m'aider a nouveau se serait super.merci
                              0
                              1. Bonjour,
                                essai de joindre ton fichier et j'essaierais de resoudre ton probleme
                                0
                              2. @nogaretJE SAIS PAS COMMENT ON FAIT SUR LE FORUM POUR JOINDRE UN FICHIER TU POURAI ME DONNER TON ADRESSE MAIL,
                                0
                            2. Contributeur
                              Laure, si vous appliquez la mise en forme comme je vous l"ai proposé, il n'y a pas de date à configurer, excel va faire ça tout seul!
                              Par contre je doute un peu de la capacité de la mise en forme de capter l'i nfo (AUJOURDHUI()donc,pour simplifier et garantirr l'application, il vaudrait mieux:
                              Prendre une cellule hors champ, par exemple X1
                              Remplacer dans la formule e mise en forme AUJOURDHUI() par &X$1:
                              elle devient donc:
                              =ET(ESTVIDE($A1);$B1>$X$1-15)
                              Au cas où: cette formule ne rentre pas dans la cellule mais dans la boite de mise en forme c onditionnelle.
                              CRLMNT
                              0
                              1. pour la date du jour il n'y a rien a faire excel l'a connait il suffit de mettre dans une cellule la formule =Aujourdhui() et automatiquement le jour s'affiche
                                0
                                1. je ne sais pas comment configurer exel pour qu'il tienne compte de la date du jour automatiquement
                                  0
                                  1. il faut travailler Format/Mise en forme conditionnelle
                                    exemple
                                    dans la cellule mettre la forme qui donne la date du jour =Aujourdhui()
                                    il mettre en forme la cellule a colorier exemple A5
                                    dans la premiere condition "la formule est" "=SI(A5;A5;A5)=""
                                    choisir le format exemple jaune

                                    dans la deuxieme condition " la formule est" "=SI(A5;A5;A5)<A1+15"
                                    choisir le format exemple rouge

                                    dans la troisieme condition " la formule est" "=SI(A5;A5;A5)>A1+15
                                    choisir le format exemple bleu

                                    il ne reste plus qu'a mettre une date dans la cellule A5 et elle change de couleur suivant la date du jour

                                    bon courage

                                    A+
                                    0
                                    • 1
                                    • 2