Formule excel complexe
Résolu
CqtKlz
-
CqtKlz -
CqtKlz -
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.
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.
A voir également:
- Formule excel complexe
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule somme excel colonne - Guide
- Excel mise en forme conditionnelle formule - Guide
- Liste déroulante excel - Guide
6 réponses
Bonjour,
=SI(O7="";"";SI(ET(O7="X";J7="");"Passage";SI(ET(O7="X";J7>=ANNEE(AUJOURDHUI()));"Renouvellement";"")))
Bonjour,
Voici la formule corrigée, manquait et "ET()"
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")))
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 :
Cordialement
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
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
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
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.
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.
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
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
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")))
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")))
Bon j'espère qu'avec ce petit exemple ce sera plus parlant
https://www.cjoint.com/c/JKgoXzFAQaS
Cordialement
https://www.cjoint.com/c/JKgoXzFAQaS
Cordialement
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 à
qui fonctionne tout au bien.
Cordialement
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
Donc le problème vient d'ailleurs !