Problème de date et jours ouvrés

Résolu/Fermé
PapyLuc974 Messages postés 9 Date d'inscription samedi 28 janvier 2012 Statut Membre Dernière intervention 31 janvier 2012 - Modifié par PapyLuc974 le 30/01/2012 à 07:58
 Papyluc974 - 1 févr. 2012 à 08:02
Bonjour à tous,

Je suis nouveau membre et (presque) nouveau en informatique, malgré mon age avancé ! :). Je manipule un peu Excel mais je rencontre quelques difficultés avec le problème suivant :
Je cherche à remplir automatiquement des cellules correspondant à une période délimitée par deux dates saisies dans un tableau. Je suis arrivé à un résultat qui fonctionne, mais pour une seule période de congés par employé, alors qu'il en faudrait plusieurs. (division du droit légal à 5 semaines de congés par an).
De plus, je n'arrive pas à faire un total exact des jours pris, déduction faite des jours fériés et dimanches, la fonction NB.JOURS.OUVRES() retirant les samedis ET les dimanches alors qu'il ne faut retirer que les dimanches.

Voici mon fichier : https://www.cjoint.com/?BADtNmBqo8E

Si quelqu'un à une solution ce serait formidable.
Merci d'avance pour votre aide.


4 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié par michel_m le 30/01/2012 à 10:05
Bonjour
en L44
=G44-B44-SOMMEPROD((JoursFériés>=B44)*(JoursFériés<=G44))-ENT((G62-JOURSEM(G62-(1-1))-B62+8)/7)

à tirer vers le bas

dommage que tu sois obligé de ressaisir les dates dans ton tableau chaque nouvel an alors qu'en écrivant une seule fois l'année....

remarque:   
nbre de dimanche entre 2 dates   
ENT((G62-JOURSEM(G62-(1-1))-B62+8)/7) 
 à partir de l'auteur: Alain Vallon, MVP

Michel
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
30 janv. 2012 à 12:40
Re,
il y avait une erreur dans le calcul du nombre de dimanche!
j'ai travaillé sur une maquette (+ facile pour moi)
https://www.cjoint.com/?3AEmHpiV2ks

dans ton classeur , pour le rendre perpétuel tu nommes A2: "an_0" et tu inscris que l'année
la date de départ (1/6/11) sera
=date(an_0-1;6;1)
sur la maquette tu trouveras aussi les jours fériés de l'année an_0

tu seras tranquille pour 2013,14....
0
PapyLuc974 Messages postés 9 Date d'inscription samedi 28 janvier 2012 Statut Membre Dernière intervention 31 janvier 2012 10
Modifié par PapyLuc974 le 30/01/2012 à 13:04
Merci de cette rapide réaction :)
J'avais corrigé de moi-même, c'est vrai que le copier-coller réserve des surprises.
CEPENDANT :), il semble que le résultat ne soit pas correct. En effet si j'indique le 1er mars comme premier jour de congé et le 11 avril comme dernier jour (inclus), je retire 6 dimanches et 1 jour férié (le 9 avril) pour obtenir 35 jours ouvrés, durée maximum légale. Or la formule me renvoie 34 !
Pour que le premier jour et le dernier soient inclus il faut je pense corriger comme suit :
=G44-B44+1-SOMMEPROD((JoursFériés>=B44)*(JoursFériés<=G44))-ENT((G44-JOURSEM(G44-(1-1))-B44+8)/7)
Je vais étudier de plus près cette fonction SOMMEPROD() que je n'ai jamais utilisée jusqu'à présent.
Et merci aussi pour l'astuce de l'AN 0, c'est super.
A+
0
PapyLuc974 Messages postés 9 Date d'inscription samedi 28 janvier 2012 Statut Membre Dernière intervention 31 janvier 2012 10
30 janv. 2012 à 13:52
Hello,
J'ose faire appel à vos lumières sur le même tableau :
Les cellules sont colorés automatiquement une fois que les dates de congés sont tapées. Mais ça ne marche que pour une seule période. Comment faire pour que trois périodes par salarié (ou plus...) puissent être indiquées dans la grille sur la même ligne par employé ?
Mon tableau : https://www.cjoint.com/?BAEnYP2ARYV
0
Raymond PENTIER Messages postés 58393 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 avril 2024 17 096
30 janv. 2012 à 23:36
Bonjour, PapyLuc974.

Ce n'est pas possible
. Puisque tu as prévu trois périodes de prise de congés, il faut obligatoirement ménager aussi trois lignes par salarié dans la grille.

Concernant la formule, dans la partie finale je lis JOURSEM(G44-(1-1)) alors que
JOURSEM(G44) donne exactement la même chose !
Pour une meilleure compréhension de la formule, on peut en reformuler le début en remplaçant
SI(B44="";"";SI(G44="";"";
par
SI(OU(B44="";G44="");"";
ce qui donne au final
=SI(OU(B44="";G44="");"";G44-B44+1-SOMMEPROD((JoursFériés>=B44)*(JoursFériés<=G44))-ENT((G44-JOURSEM(G44)-B44+8)/7))

Et je salue tous les Réunionnais, surtout ceux du troisième âge ...
0
PapyLuc974 Messages postés 9 Date d'inscription samedi 28 janvier 2012 Statut Membre Dernière intervention 31 janvier 2012 10
31 janv. 2012 à 09:21
Hello Raymond, et bonjour à la Guadeloupe !
Il se trouve que j'y suis arrivé ! la formule est sans doute un peu "lourde" mais elle fonctionne et je peux afficher trois périodes sur une même ligne. Il est surement possible de la simplifier, mais je débute, alors...
le fichier modifié : https://www.cjoint.com/?BAFjqVR7kdT
Merci pour la modification du calcul des jours.

@Le Pingou : Maintenant, mon problème est résolu. J'espère que ça pourra servir à quelqu'un.
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
31 janv. 2012 à 17:10
Merci.
0
Raymond PENTIER Messages postés 58393 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 23 avril 2024 17 096
1 févr. 2012 à 02:45
Content de voir que tu as trouvé l'astuce permettant de respecter tes contraintes.
Je n'y aurais pas pensé ...

Mais pour alléger tes formules, et pour ne pas traîner une écriture inutile, tu aurais quand même dû remplacer JOURSEM(G44-(1-1)) par JOURSEM(G44)
... ne serait-ce que pour la beauté de la formulation, car il y a de la poésie même dans excel !

Amicalement.
0
C'est fait désormais !
Encore merci à toi
Amitiés de l'Océan Indien
0
PapyLuc974 Messages postés 9 Date d'inscription samedi 28 janvier 2012 Statut Membre Dernière intervention 31 janvier 2012 10
Modifié par PapyLuc974 le 30/01/2012 à 14:57
Bien :
1°) Je ne vois pas en quoi je suis de mauvaise foi ...?
2°) MA formule, corrigée après TON erreur, indique simplement que rien ne doit être affiché si les cellules B44 et G44 sont vides. Par ailleurs pour que le premier et le dernier jour indiqués en B44 et G44 soient tous deux deux inclus dans la période, j'ai ajouté "+1" après "G44-B44...".
Le résultat est correct, quelles que soient les dates indiquées.
Donc merci pour ton aide, mais si tes nerfs ne supportent pas qu'on te corrige quand tu fais une erreur, il vaut mieux t'abstenir de jouer les "contributeurs".
Le respect commence par l'écoute et un minimum de politesse.

J'en ai également terminé avec toi !
0
Le Pingou Messages postés 12042 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 24 avril 2024 1 426
30 janv. 2012 à 23:49
Bonjour,
Au fait, est-ce que votre problème est résolu ?
Salutations.
Le Pingo
0