probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule vide)

  • Initiateur de la discussion Initiateur de la discussion fabian123
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fabian123

XLDnaute Occasionnel
Bonjour à toutes et tous!


Comme l'indique le titre, j'ai un 'tit souci avec la fonction "joursem"!


je vais essayer de vous expliquer la situation:


- colonne A : j'y encode la date
- colonne B : doit afficher une valeur en fonction du jour de semaine encodé dans la colonne A (date)
(j'ai une valeur différente par jour)

Voici la formule que j'ai tapé dans les cellules de la colonne B

=SI(JOURSEM(A1,2)=1;"BLEU";SI(JOURSEM(A1,2)=2;"JAUNE";SI(JOURSEM(A1,2)=3;"VERT";SI(JOURSEM(A1,2)=4;"ROSE";SI(JOURSEM(A1,2)=5;"VIOLET";SI(JOURSEM(A1,2)=6;"TURQUOISE";SI(JOURSEM(A1,2)=7;"MAGENTA";"")))))))


Elle fonctionne très bien... à un petit détail près! 😀
Quand la cellule dans la colonne A est vide, la colonne B affiche d'office la valeur du jour 6 soit "TURQUOISE"! Hors, bien évidemment, je souhaite que lorsqu'il n'y a pas de date, la cellule en B reste vide!

Est-ce qu'il y a une explication au fait que la formule renvoie la valeur du jour 6 quand il n'y a pas de date?

J'avais bien pensé contourner le problème en rajoutant un "si cellule vide, alors ne rien afficher" mais je suis déjà à 7 fonction imbriquées et ne sais donc plus en rajouter. Je pensais également que de mettre des "" dans la référence "si faux" à la fin de ma formule permettrais de règler ce problème, mais non...

Quelqu'un peut m'aider?!

Merci d'avance!!
 
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Bonjour fabian123.


Essayez :​
Code:
=SI(A1="";"";CHOISIR(JOURSEM(A1;2);"BLEU";"JAUNE";"VERT";"ROSE";"VIOLET";"TURQUOISE";"MAGENTA";""))


ROGER2327
#6715


Jeudi 19 Tatane 140 (Sainte Taloche, matrone - fête Suprême Quarte)
14 Thermidor An CCXXI, 3,0719h - basilic
2013-W31-4T07:22:21Z
 
Dernière édition:
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Bonjour Fabian,


=SI(A1;CHOISIR(JOURSEM(A1;2);"BLEU";"JAUNE";"VERT";"ROSE";"VIOLET";"TURQUOISE";"MAGENTA");"")


à+
Philippe

Edit: Bonjour Roger
 
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Bonjour Roger2327,


ça fonctionne parfaitement!!! Un tout grand merci!!!

Je ne connaissais pas la fonction "choisir"...

Juste pour ma curiosité, est-ce qu'il y a une explication au fait que ma formule renvoie toujours la valeur du jour 6 lorsque la cellule "date" est vide?

Enfin, autre question, mais si vous pensez que je dois ouvrir un autre post, dites le!

Je n'en ai pas nécessairement l'utilité, mais si un jour devait faire référence à deux valeurs (par exemple le lundi c'est soit blanc, soit jaune) je suppose qu'il faudrait passer par une macro pour pouvoir afficher les deux possibilités et que l'utilisateur choisira celle qu'il désire?
(ceci est juste une question par curiosité, elle ne necéssite pas forcément une réponse!)

Encore merci pour votre réponse ultra rapide! vous m'avez été d'un grand secours!

Merci aussi a phlaurent55! j'étais occupé de répondre quand vous avez envoyé votre réponse!
 
Dernière édition:
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Bonjour Roger2327,


ça fonctionne parfaitement!!! Un tout grand merci!!!

Je ne connaissais pas la fonction "choisir"...

Juste pour ma curiosité, est-ce qu'il y a une explication au fait que ma formule renvoie toujours la valeur du jour 6 lorsque la cellule "date" est vide?
Bonjour,

Sous Excel, une date est codée par un nombre : chaque jour un nombre. Par exemple, aujourd'hui, on est le 41487. Le nombre 0 correspond au 31/12/1899 (le 00/01/1900 en fait), donc un dimanche, d'où le 6 sur une case contenant 0 ou étant analysée comme un 0 (vide).
Voici mon explication la plus plausible 🙂 .

Bonne chance
 
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Re...


Bonjour,

Sous Excel, une date est codée par un nombre : chaque jour un nombre. Par exemple, aujourd'hui, on est le 41487. Le nombre 0 correspond au 31/12/1899 (le 00/01/1900 en fait), donc un dimanche, d'où le 6 sur une case contenant 0 ou étant analysée comme un 0 (vide).
Voici mon explication la plus plausible 🙂 .

Bonne chance
Vous avez raison sur un point : le 31 décembre 1899 fut un dimanche.
Mais ça n'explique pas le 6 renvoyé par =JOURSEM(0;2). Ce devrait être 7. En fait, la fonction JOURSEM renvoie un résultat erroné pour les dates antérieures au 1[SUP]er[/SUP] mars 1900.​


Bonne journée.


ROGER2327
#6716


Vendredi 20 Tatane 140 (Saint Tiberge, frère quêteur - fête Suprême Quarte)
15 Thermidor An CCXXI, 5,9481h - brebis
2013-W31-5T14:16:31Z
 
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Re...


Si je comprends bien, pour excel, 1900 n'est pas bissextile, et donc, toujours pour excel, le 31 décembre 1899 est un samedi, c'est ça ?
La correspondance entre les dates et les numéros de série est définie comme suit :[table="width: 500, class: grid"]
[tr]
[td]01/01/1900[/td]
[td]1[/td]
[td][/td]
[td]01/02/1900[/td]
[td]32[/td]
[td][/td]
[td]01/03/1900[/td]
[td]61[/td]
[/tr]
[tr]
[td]...[/td]
[td]...[/td]
[td][/td]
[td]...[/td]
[td]...[/td]
[td][/td]
[td]...[/td]
[td]...[/td]
[/tr]
[tr]
[td]28/01/1900[/td]
[td]28[/td]
[td][/td]
[td]28/02/1900[/td]
[td]59[/td]
[td][/td]
[td]28/03/1900[/td]
[td]88[/td]
[/tr]
[tr]
[td]29/01/1900[/td]
[td]29[/td]
[td][/td]
[td][/td]
[td][/td]
[td][/td]
[td]29/03/1900[/td]
[td]89[/td]
[/tr]
[tr]
[td]30/01/1900[/td]
[td]30[/td]
[td][/td]
[td][/td]
[td][/td]
[td][/td]
[td]30/03/1900[/td]
[td]90[/td]
[/tr]
[tr]
[td]31/01/1900[/td]
[td]31[/td]
[td][/td]
[td][/td]
[td][/td]
[td][/td]
[td]31/03/1900[/td]
[td]91[/td]
[/tr]
[/table]Il n'existe pas de jour n°60. C'est pourquoi Microsoft a inventé, en exclusivité mondiale, un 29 février 1900.
Pour utiliser la fonction JOURSEM avec une date en A1, il "suffit" d'écrire :
Code:
=SI(A1=60;"";JOURSEM(A1+(A1<60);2))
Pourquoi faire simple, si l'on peut faire compliqué ?


ROGER2327
#6717


Vendredi 20 Tatane 140 (Saint Tiberge, frère quêteur - fête Suprême Quarte)
15 Thermidor An CCXXI, 9,0160h - brebis
2013-W31-5T21:38:18Z
 
Dernière édition:
Re : probleme avec la fonction "joursem" (affiche tjrs le jour 6 même quand cellule v

Bonjour à tous


Juste pour un peu plus de confort avec une matrice nommée COULEURS
(Insertion/Noms/Définir)
insertnoms.png

Et comme formule en B1
Code:
=SI(A1;INDEX(COULEURS;JOURSEM(A1;2);0);"")

NB: L'avantage c'est que COULEURS pourra être utiliser ailleurs dans le classeur.
(et on a saisir la liste des couleurs qu'une seule fois 😉.)
C'est là que se situe à mon sens, le petit plus de confort .
(faut dire que j'ai les doigts fragiles 😉)
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
288
Retour