Mise en forme conditionnelle

Bonjour à tous,

Je travaille sur un fichier Excel et je souhaite mettre en place une mise en forme conditionnelle assez spécifique.

J'utilise actuellement la formule suivante :

=AC3>SI(DROITE(AF3;2)-6<0;GAUCHE(AF3;4)-1&TEXTE(DROITE(AF3;2)-6+52;"00");GAUCHE(AF3;4)&TEXTE(DROITE(AF3;2)-6;"00"))

Les cellules AC3 et AF3 contiennent des valeurs au format AAAASS (année + semaine, par exemple 202643).

Le problème est que cette formule ne fonctionne pas en mise en forme conditionnelle. Je ne peux malheureusement pas utiliser de cellule intermédiaire pour réaliser le calcul, car le fichier contient déjà des macros et de nombreuses dépendances que je ne souhaite pas modifier.

Auriez-vous une solution ou une autre approche permettant d'effectuer cette comparaison directement dans la règle de mise en forme conditionnelle ?

Merci d'avance pour votre aide.

Bonjour AG-PAU et bienvenue sur ce forum

Que souhaitez-vous tester exactement, car sans fichier il n'est pas simple de chiffrer votre formule

Si dans la colonne AC et AF vous avez des chiffres, pourquoi faire une formule aussi tarabiscotée

La semaine 202640 sera toujours supérieures à la 202540 ou la 202639 et inférieure à la 202641 ou 202740 !

A+

Je souhaite appliquer une mise en forme conditionnelle : si la valeur de la colonne AC est supérieure à la valeur de la colonne AF moins 6 semaines, alors la cellule doit être coloriée en orange.

Cependant, le format utilisé est AAAASS (année + semaine). Par exemple :

  • AC = 202551 (semaine 51 de 2025)
  • AF = 202602 (semaine 2 de 2026)

Le problème est que si l'on fait simplement 202602 - 6 = 202596, le résultat est incorrect car une année ne contient que 52 semaines et non 100.

Dans cet exemple, la semaine 2 de 2026 moins 6 semaines correspond en réalité à la semaine 48 de 2025 (202548).

Comment créer une formule ou une mise en forme conditionnelle qui gère correctement le passage d'une année à l'autre ?

Bonjour

Sans fichier visible difficile de répondre

A tout hasard tentez cette formule

=DATE(ENT(AC3/100);1;4)-JOURSEM(DATE(ENT(AC3/100);1;4);2)+1+(MOD(AC3;100)-1)*7>DATE(ENT(AF3/100);1;4)-JOURSEM(DATE(ENT(AF3/100);1;4);2)+1+(MOD(AF3;100)-1)*7-42

Hello,

un peu au pif aussi

=(GAUCHE(AC2;4)*52+DROITE(AC2;2))>(GAUCHE(AF2;4)*52+DROITE(AF2;2)-6)

Cette formule sous entend que toutes les années ont 52 semaines ce qui en réalités n'est pas vrai car une fois tous les 5 ans il y a 53 semaines.

Reste à savoir si vous travaillez avec les années civiles (1er janvier = semaine 1) ou années ISO (1er jeudi de l'année = semaine 1, donc 52 ou 53 semaines)

(2026 est une année de 53 semaines, en ISO)

PS : la version d'Excel est soit : 2016, 2019, 2021, 2024 ou 365. 2616 correspond à la build. Merci de mettre à jour votre profil pour avoir des solutions correspondantes à votre version

Rechercher des sujets similaires à "mise forme conditionnelle"