Fonction SI avec changement de date

Bonsoir à tous ! Voici mon premier poste, je vous explique un peu.

Je suis actuellement en formation où l'on m'a donné un exercice avec une formule très compliquée. Je joins le tableau pour mieux comprendre. J'ai tous les jours du mois dans A, je souhaite dans les dernières cellules après le 28 de chaque mois que en fonction du nombre de jours si par exemple on est en février 2020 que mon mois s'arrête au 29 et qu'au lieu d'avoir 01, et 02 mars il n'y ait rien mais qu'en décembre il y ait les 31 jours.

Pour l'instant ma formule qui est dans A39 ne me mets rien si je suis après le dernier jour du mois mais si dans ma case mois en D7 je change de date et bien il ne me mets pas 30 ou 31. Pour ma formule je dois utiliser ces 3 choses : =mois; +1; et <>. J'ai écris =SI(A38><MOIS(A38)+1;"";A38+1).

64forum-si-excel.xlsx (12.68 Ko)

Pouvez-vous m'indiquer la voie à prendre ou bien si je fais quelque chose de mal dans ma formule j'aimerais comprendre le fonctionnement. J'espère avoir été claire, je vous remercie d'avoir pris le temps de lire, et j'espère que quelqu'un saura me conseiller.

Bonne soirée à tous !!

Bonjour,

Je pourrais te donner directement la bonne réponse mais, comme tu souhaites à priori comprendre, allons-y par étapes.

Pourrais-tu me traduire ta formule suivante en français ? En remplaçant les références des cellules par ce qu'elles représentent.

=SI(A38<>MOIS(A38)+1;"";A38+1)

(je l'ai légèrement modifiée car tu l'avais mieux écrite sur Excel que dans ton post).
Edit : je viens de mettre à jour la formule, je m'étais planté en l'écrivant.

Bonsoir,

c'est très gentil de ne pas me donner la réponse comme ça je comprendrais mieux !

Je suis désolée je viens de me rendre compte que ce n'est pas traduisible en français.. :O

Je comprends ce que je souhaite faire mais je n'arrive pas à l'appliquer. Et là je me suis complètement perdue.

Alors, si, c'est possible de traduire. Mais c'est vrai que cela dépend de la maîtrise des fonctions conditionnelles que l'on a.

Alors est-ce que tu pourrais essayer de réexpliquer ce que tu veux faire. En utilisant dans ta phrase française "si", "mois" et "jour"?

Si on est le 28 février ; +1 jour = à un mois différent donc 01 mars ; alors on mets rien ; sinon +1 jour. Est-ce que c'est compréhensible ?

Si je fais un effort, on doit pouvoir dire que je comprends la phrase. :D

Essaie de te détacher du 28 février et du 1er mars, puisque tu veux que ça fonctionne pour tous les mois de l'année. Essaie d'être plus générique. Commence ta phrase par "si le mois..."

Alors : si le mois actuel est différent du mois précédent alors je souhaite que ma case soit vide sinon je souhaite avoir un jour en plus.

Est-ce que je dois utiliser des si imbriqués ? Ou est-ce qu'il y a plus simple ?

Ah, on avance.
Tu remarques que tu dis 2 fois "mois" ?

Dans ta formule, on ne le trouvait qu'une fois.

Pas besoin de si imbriqués. Essaie de me traduire ça en Excel.

Si(MOIS(A38)<>A38;"rien";A38+1) ?

Tu compares un mois et une date, ça va forcément coincer.

=Si(mois(A38+1)...

J'ai essayé ça et je me rapproche du but : SI(MOIS(A38+1)<>MOIS(A38);"";(A38+1)) le soucis c'est que dans la cellule en dessous où il est censé marqué 02 mars il y a écrit #valeur. Pour celle du 01 mars juste en dessous j'ai rien donc ça c'est bon. Et quand je mets décembre ça me mets les 31 jours.

Donc maintenant j'ai le soucis valeur

Oui, parce que du coup tu demandes d'ajouter 1 à une cellule vide. Et du vide +1 pour Excel, ça donne une erreur.

Regarde du côté de la fonction SIERREUR. Tu brûles ;)

PS : les dernières parenthèses autour de A38+1 sont inutiles.

J'avais déjà essayé d'utiliser SIERREUR cet après-midi mais je n'ai pas trop compris comment faire pour qu'elle me montre l'erreur :/

sierreur ne montre pas d'erreur, elle la masque. N'hésite pas à rechercher sur Internet comment cela fonctionne.

Ton prochain post doit donner la bonne réponse ;)

Aaaah je n'avais pas compris ça comme ça ! Trop bien !!!

=SIERREUR(SI(MOIS(A39+1)<>MOIS(A39);"";(A39+1));"") ça marche c'est génial !!!!!!!!!!!!!!!!!!!!!!! :DDD

Ce qui donne donc en français :
Si le mois de demain est différent du mois d'aujourd'hui, alors on laisse vide, sinon on écrit la date du lendemain.

Yes ! Ca va m'aider pour les futures formules. Je tiens à te remercier de m'avoir indiquer le chemin, c'était constructif et compréhensif ! Merci beaucoup ! C'est trop satisfaisant de comprendre :D j'adooore excel *.*

Bonne soirée et peut-être à une prochaine, en attendant bonne continuation :) !

Rechercher des sujets similaires à "fonction changement date"