Formule excel complexe

Résolu/Fermé
CqtKlz - 6 nov. 2020 à 09:36
 CqtKlz - 9 nov. 2020 à 10:32
Bonjour,

Je souhaiterais inclure une formule d'alerte sur mon tableur Excel et je sens qu'il ne me manque pas grand chose pour être dans le vrai. En gros :

Si la case formation est vide alors la case actuelle ne doit rien afficher
Si la case formation a une croix et que la case date est vide alors la case actuelle doit afficher Passage
Si la case formation a une croix et que la case date affiche cette année ou l'année suivante alors la case actuelle doit afficher Renouvellement

Voici la formule que j'écris :

=SI(ESTVIDE(O7);"";SI(ET(O7="X";ESTVIDE(J7));"Passage";SI(O7="X";J7=<AUJOURDHUI()-365;"Renouvellement")))

Pouvez-vous m'aider ?

Merci d'avance.

6 réponses

Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022 167
Modifié le 6 nov. 2020 à 10:17
Bonjour,

=SI(O7="";"";SI(ET(O7="X";J7="");"Passage";SI(ET(O7="X";J7>=ANNEE(AUJOURDHUI()));"Renouvellement";"")))


0
Bonjour, elle ne fonctionne pas. Cela m'écrit Renouvellement pour des dates qui sont en 2022... Merci quand même ! :)
0
Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022 167 > CqtKlz
6 nov. 2020 à 12:01
Rectification :

=SI(O7="";"";SI(ET(O7="X";J7="");"Passage";SI(ET(O7="X";J7-ANNEE(AUJOURDHUI())>=0;J7-ANNEE(AUJOURDHUI())<2);"Renouvellement";"")))
0
CqtKlz > Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022
6 nov. 2020 à 12:25
Cela ne fonctionne toujours pas, je n'ai pas le renouvellement pour l'année en cours et N+1. Merci d'avoir essayé :)
0
Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022 167 > CqtKlz
6 nov. 2020 à 13:59
Bah si, cela fonctionne :





Donc le problème vient d'ailleurs !
0
CqtKlz > Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022
6 nov. 2020 à 14:35
D'accord, je ne sais pas d'où cela peut venir et malheureusement, je ne peux pas inclure de capture d'écran.. Merci quand même ! :)
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
6 nov. 2020 à 10:17
Bonjour,
Voici la formule corrigée, manquait et "ET()"
=SI(ESTVIDE(O7);"v";SI(ET(O7="X";ESTVIDE(J7));"Passage";SI(ET(O7="X";J7<=AUJOURDHUI()-365);"Renouvellement";"faux")))
0
Bonjour, elle ne fonctionne pas. Cela m'écrit Faux pour des dates qui sont en 2021 alors qu'elles doivent être en Renouvellement et Faux à la place d'être vides... Merci quand même ! :)
0
PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024 1 448
Modifié le 6 nov. 2020 à 10:35
Bonjour,

Pas bien compris pour le renouvellement ?

Si la mention "Renouvellement" doit s'afficher pendant toute l'année qui précède la date inscrite en J7, alors :

=SI(O7="";"";SI(ET(O7="X";J7="");"Passage";SI(ET(O7="X";AUJOURDHUI()>=MOIS.DECALER(J7;-12));"Renouvellement";"")))


Cordialement
0
Bonjour, votre formule fonctionne mieux mais elle m'écrit Renouvellement pour toutes les dates inférieures et supérieures au lieu de le mettre pour l'année en cours et N+1. Merci quand même ! :)
0
PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024 1 448
6 nov. 2020 à 12:18
Faudrait peut-être mieux expliquer en donnant des exemples

MOIS.DECALER c'est date à date en tenant compte des années bissextiles
En prenant la date d'aujourd'hui (6/11/2020) et si la date en J7 est 6/11/2021 ; la formule marque "renouvellement" pour toute la période du 6/11/20 au 6/11/21. Si J7 est 7/11/21 la cellule reste vide jusqu'à demain.

A moins que finalement il faut marquer renouvellement pendant 1 an à partir de la date inscrite en J7.

A te lire

Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Pour la faire simple, voici les colonnes de mon tableau :

J7 = Formation à venir = Passage/Renouvellement/(Vide)
F7 = Expire le = jj/mm/aaaa
O7 = Catégorie 1 = X

Le Renouvellement est à prévoir pour l'année en cours et l'année suivante. Si on a un permis dépassé de 1 an par exemple, nous devons faire un Passage, également si nous n'avons pas de date mais que la O7 est coché. Et si le permis est valable jusqu'en 2023, la case J7 doit être vide jusqu'à l'ouverture du fichier en 2022.

Je ne sais pas si cela est plus clair pour vous.
0
PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024 1 448
Modifié le 6 nov. 2020 à 13:36
il faudrait s'entendre, tu nous fais corriger une formule dans laquelle tu références J7 alors que finalement c'est F7 qui est la date de bascule et que c'est en J7 que doit venir la formule.

D'autre part tu écris ""Et si le permis est valable jusqu'en 2023, la case J7 doit être vide jusqu'à l'ouverture du fichier en 2022 "" doit-on considérer la date du 1/1/22 comme date de départ pour une date d'expiration en cours d'année 2023 ou bien un an avant celle-ci ???

A te lire
Cordialement
0
CqtKlz > PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024
Modifié le 6 nov. 2020 à 14:47
J'ai fait une capture d'écran de mon tableau mais je ne peux l'inclure ici... En effet, ma réponse est erronée, voici la correction:
F7 = Formation à venir = Passage/Renouvellement/(Vide)
J7 = Expire le = jj/mm/aaaa

Exemple de dates de mon tableau :
5/23/2024
4/26/2023
10/17/2021
C'était un exemple 2022. Ce que je souhaite, plus précisément c'est qu'il faut toujours que l'année en cours et l'année N+1 soient en Renouvellement qu'importe la date à laquelle j'ouvre le fichier. Si je l'ouvre actuellement, il faut que 2020 et 2021 soient en Renouvellement, si je l'ouvre en 2022, 2022 et 2023 en Renouvellement.

J'ai essayé avec Mois.Décaler du coup mais ca me met Renouvellement absolument partout où il y a une date... Je ne l'ai peut-être pas placé au bon endroit dans ma formule...

=SI(ESTVIDE(O7),"",SI(ET(O7="X",ESTVIDE(J7)),"Passage",SI(ET(O7="X",MOIS.DECALER(AUJOURDHUI(),J7)),"Renouvellement")))
0
PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024 1 448 > CqtKlz
6 nov. 2020 à 15:49
Bon j'espère qu'avec ce petit exemple ce sera plus parlant

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

Cordialement
0
Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022 167 > PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024
6 nov. 2020 à 15:52
Salutations PapyLuc , il me semble que tu comprends mieux le sujet que moi !

Perso, je suis perdu ou alors qq chose m'a échappé !?

Je quitte le sujet, en sachant pertinemment que tu trouveras avant moi ce qui convient le mieux à CqtKlz
0
PapyLuc51 Messages postés 4420 Date d'inscription dimanche 3 mai 2009 Statut Membre Dernière intervention 16 décembre 2024 1 448 > Yoyo01000 Messages postés 1639 Date d'inscription samedi 2 février 2019 Statut Membre Dernière intervention 7 mars 2022
Modifié le 7 nov. 2020 à 07:37
Salutations Yoyo

L'exemple que j'ai mis est fait avec la première formule que j'ai envoyée (mon message #3).
La réponse de notre demandeur m'a conforté dans mon idée.

@ CqtKlz

Je viens de constater en relisant la formule que tu l'as mal recopiée (message #14)
=SI(ESTVIDE(O7),"",SI(ET(O7="X",ESTVIDE(J7)),"Passage",SI(ET(O7="X",MOIS.DECALER(AUJOURDHUI(),J7)),"Renouvellement")))
La partie en gras doit s'inscrire AUJOURDHUI()>=MOIS.DECALER(J7;-12).
C'est à dire tu retires 12 mois à la date en J7 et Renouvellement s'inscrit quand la date du jour est égale ou dépasse se décalage et reste jusqu'à la date en J7.
Et puis tu inscris toujours ESTVIDE(O7) ?? Est-ce à dire que O7="" qui est plus rapide à inscrire ne fonctionne pas sur ton Excel ?? Ça me parait étonnant !!.

On peut même réduire la formule à
=SI(O7="";"";SI(J7="";"Passage";SI(AUJOURDHUI()>=MOIS.DECALER(J7;-12);"Renouvellement";"")))

qui fonctionne tout au bien.

Cordialement
0
Le Pingou Messages postés 12225 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 6 décembre 2024 1 452
6 nov. 2020 à 13:23
Bonjour,
Désolé, je quitte le poste.
0
D'accord merci à vous, bon week-end :)
0