Créé tableau mensuel avec lundi au vendredi seulement [Résolu/Fermé]

Signaler
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
-
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
-
Bonjour,

Je dois créé un tableau de productivité mensuel affichant seulement les lundis au vendredis.
Ce tableau sera mis à jours mensuellement par les employés du département. Il faut que la mise à jours des dates soit le plus simple possible. J'ai quelque chose de créé déjà mais je n'arrive pas à trouver une solution pour que les samedis et dimanches n'apparaissent pas.

Avez-vous une idée pour y arriver?

J'ai mis un fichier partiel sur cjoint: https://www.cjoint.com/?3KcpRAh3XRb

SVP ignorer la 2ième feuille intitulée: Production Mensuel

Dans mon fichier, si vous modifier la date en cellule B5 (feuille: Production Mensuel (2)), les dates de la colonne B se modifie, incluant les samedis et dimanches.

Merci pour votre aide!



eLise

9 réponses

Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Bonjour,

en C9 :
=C8+1+(JOURSEM(C8;2)=5)*2

Masquer éventuellement les jours du mois suivant par une MFC.

eric

edit: ou bien mois suivant masqué avec cette formule :
=SI(C8="";"";SI(MOIS(C8+1+(JOURSEM(C8;2)=5)*2)=MOIS(C8);C8+1+(JOURSEM(C8;2)=5)*2;""))

Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 812
Bonjour
directement dans la colonne C sans passer par A et B:
en C8 le premier jour de la liste en manuel
en C9 la formule à tirer vers le bas:
=SI(JOURSEM(C8;2)=5;C8+3;C8+1))

Note: le code JOURSEM donne 5 pour le vendredi lorsqu'on y adjoint le ;2
Sans le 2 c'est à l'américaine et les semaines commencent le dimanche
crdlmnt

ne sommes nous pas seuls à comprendre ce que l'on explique?
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Ouff! Que de solutions!

Maintenant, pour ajouter au défi. J'ai ajouté un nouveau fichier, inculant en colonne B les 5 jours ouvrables de la semaine. Et en allouant au moins 2 lignes entre chaque section de jours ouvrables. Car je devrai y inclure des totaux hebdomadaires pour chacune des sections 24, 21, 23, 22 et 2ième Transaction

Comment devrais-je m'y prendre pour qu'en inscrivant le 1er du mois en B5, les dates du mois s'appliquent dans la colonne C vis-à-vis les jours correspondants? Soit le 1 novembre 2012 vis-à-vis le jeudi de la première section de jours ouvrables et ainsi de suite, toujours en évitant les samedis et dimanches?

https://www.cjoint.com/?3KcrpyAh0PB

J'imagine qu'il faudra créer une macro ou une fonction?
Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Faire supprimer les lignes du we pour les remettre ensuite (en masquant ces jours), tu aurais dû commencer par là...
en C8 (une seule formule) :
=SI(JOURSEM($B$5-JOURSEM($B$5;2)+LIGNE()-7;2)>5;"";$B$5-JOURSEM($B$5;2)+LIGNE()-7)
à recopier vers le bas

eric
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Ok, ça fonctionne. Et si je voulais ne voir que les dates du mois en question, c'est à dire, juste novembre par exemple. Est-ce qu'on peut ajouter une instruction dans la formule pour qu'elle n'affiche les dates qui ne sont pas comprises dans le mois en question?
Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Re,

=SI(OU(MOIS($B$5-JOURSEM($B$5;2)+LIGNE()-7)<>MOIS($B$5);JOURSEM($B$5-JOURSEM($B$5;2)+LIGNE()-7;2)>5);"";$B$5-JOURSEM($B$5;2)+LIGNE()-7)
Il y a peut-être moyen de simplifier...

eric

Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Bonjour Eric,

Je viens de voir une petite lacune dans le résultat de ta formule. Fais le test sur mon fichier: https://www.cjoint.com/?3KgsMBa8qXm

Si tu inscris le 1er janvier 2012 en A3, les dates commencent à s'inscrir en A13 à la place de A6. Est-ce qu'il y a moyen de contrôler ça et de faire en sorte que les dates commencent à s'inscrire dans la première section soit de A6:A10 ?

P.S. J'ai dû ajuster la formule car j'ai compris que si j'ajoutais ou enlevais des ligne au-dessus de la ligne 3 (ce que j'ai fait), ça influençait la formule. J'avoue ne pas comprendre tout à fait ta formule alors je me demande si manqué quelque chose et c'est ce qui cause ce résultat.

Peux-tu y jeter un coup d'oeil pour moi?

Merci
Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Re ;-)

Et oui, le dimanche 1er appartient bien à la première semaine, mais comme on n'affiche pas les WE il ne reste plus grand chose...

L'adaptation pour ne pas afficher la 1ère semaine si le 1er tombe un samedi ou un dimanche, mais ça commence à devenir lourd :
=SI(OU(MOIS($A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7)<>MOIS($A$3);JOURSEM($A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7;2)>5);"";$A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7)

Je te suggère de simplifier et de masquer les dates hors mois et du WE par une MFC, si ça ne te gène pas d'avoir des dates sur ces cellules :
=$A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7
+ la MFC en A6:A39 :
=OU(MOIS(A6)<>MOIS($A$3);JOURSEM($A$6;2)>5)

https://www.cjoint.com/?BKguX4i9PSj

eric

edit : bien sûr pour la MFC lire :
=OU(MOIS(A6)<>MOIS($A$3);JOURSEM(A6;2)>5)
(A6 en relatif)
à corriger sur le fichier joint
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Bonjour Eric,

J'aime bien ta formule :
=SI(OU(MOIS($A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7)<>MOIS($A$3);JOURSEM($A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7;2)>5);"";$A$3-JOURSEM($A$3;2)+LIGNE()-5+(JOURSEM($A$3;2)>5)*7)

Même si tu trouves qu'elle est un peu lourde. Ça donne de bon résultats.

Maintenant on me demande, si possible, d'identifier les congés fériés. J'ai essayé tant bien que mal d'ajouter une RECHERCHEV dans ta formule, liée à une petite plage matricielle des congés fériés.
Si VRAI, la formule retournerait le mot «Férié» en 'A' à la place de la date (lun 1; mar 2; etc). Je sens que je suis proche car je réussi à faire ressortir les congés fériés. Mais ça se gâte pour le reste des autres dates. Pourcentage de réussite assez bas si tu considères qu'il n'y a que 11 congés fériés dans l'année:

2013-janv-01 Férié
2013-janv-02 Férié
2013-mars-29 Férié
2013-mai-20 Férié
2013-juin-24 Férié
2013-juil-01 Férié
2013-sept-02 Férié
2013-oct-14 Férié
2013-nov-11 Férié
2013-déc-25 Férié
2013-déc-26 Férié

Qu'en penses-tu Eric? est-ce possible?
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Génial Éric !

C'est superbe. Ça fonctionne juste comme je le désirais.

Je vais maintenant tenter de la comprendre...lol

Merci mille fois :-)
Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Bonsoir,

Tiens, je viens de voir que j'avais joint n'importe quoi comme fichier au post 14...

Oui, c'est possible, mais ça rallonge encore plus la formule. Elle va vraiment être imbuvable et impossible à maintenir.
Je ne veux pas être complice de cette horreur ;-)

On va passer par une colonne intermédiaire A :
en A6 : =$B$3-JOURSEM($B$3;2)+LIGNE()-5+(JOURSEM($B$3;2)>5)*7
en B6 : =SI(NB.SI(fériés;"="&A6);"férié";SI(OU(MOIS(A6)<>MOIS($B$3);JOURSEM(A6;2)>5);"";A6))
avec une plage nommée 'fériés' avecc juste les dates des fériés (1 colonne).
Tu peux inverser les tests si tu préfères ne pas afficher les fériés des WE et hors mois en cours.

https://www.cjoint.com/?BKixrQuKqQ7

eric
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Bonjour Eric,

J'ai appliqué ta suggestion. Ça semble fonctionner parfaitement. J'attends des commentaires de la personne pour qui j'ai fait ce fichier.

Merci mille fois :-)
Messages postés
5535
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
18 février 2021
575
Bonjour

=SI($B$5="";"";SI($C8<>"";SI(JOURSEM($C8;2)>=6;C8+2;C8+1)))
Messages postés
25863
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
5 812
Vous devriez vérifier Philou, avant d'éditer,votre formule n'exclut pas les samedis, puisque votre code ne rajoute que 2 si le jour d'avant est un samedi. (6).. alors qu'il faut rajouter 3 jours à Vendredi
Messages postés
5535
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
18 février 2021
575
j'ai contrôlé et cela fonctionne très bien si vous aviez regarder >=6 donc 2 suffit
Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Tu as mal contrôlé philou...
Je t'avais mis -1 (parce que mettre une mauvaise réponse après 2 autres propositions, et qu'elle soit identique en forme à la 2nde proposition mais erronée c'est abuser...) mais une bonne âme t'a remonté.
eric
Messages postés
5535
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
18 février 2021
575
Vous avez raison Eriiic j'ai bien fais une erreur en recopiant et pourtant j'étais sûr de moi comme quoi !
Je vous présente mes excuses pour cette erreur
c'est en forgeant que l'on devient forgeron
Messages postés
5535
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
18 février 2021
575
Bonjour

Je ne vous ai pas oublié !

Un fichier qui peut vous donner des idées avec un calendrier automatique

https://www.cjoint.com/?3KhtkD6Wlwq
Messages postés
23904
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
4 mars 2021
6 671
Bonsoir,

voir aussi la réponse à ta dernière question ici.
eric
Messages postés
162
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
28 février 2020
47
Merci PHILOU,

Pour le moment la formule proposée par Eric fonctionne bien, mais je conserve ton lien pour référence futur :-)
Messages postés
5535
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
18 février 2021
575
Le lien n'a qu'une durée de 4 jours