Bonjour
Je dois ajouter 15 jours à une date (jusque là je m'en sors).
La date obtenue ne doit être ni un dimanche , ni un samedi, ni un jour férié. Si tel est le cas, je prends le 1er jour suivant qui n'est pas un samedi, un dimanche ou un jour férié.
Pour tenter de réaliser cela, je me suis servi de la fonction =serie.jour.ouvré.
J'arrive à traiter tous les cas sauf ceux où la date obtenue est un jour ouvré non férié.....
Une petite aide ne serait pas de refus.
en pj mon fichier
[Résolu] Obtenir un jour ouvré hors férié
Modérateur : Vilains modOOs
Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
-
- Membre OOrganisé
- Messages : 53
- Inscription : 02 févr. 2018 22:15
[Résolu] Obtenir un jour ouvré hors férié
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par fcka le 15 juin 2019 21:39, modifié 1 fois.
HOME : (car pb avec base/postgresl avec version plus récente)
libre office Version: 6.0.6.2 (x64)
Win 8.1
DESK: (imposé)
libre office Version: 5 (x64)
Win 7
libre office Version: 6.0.6.2 (x64)
Win 8.1
DESK: (imposé)
libre office Version: 5 (x64)
Win 7
-
- PassiOOnné
- Messages : 501
- Inscription : 11 mai 2013 00:11
- Localisation : Aix en Provence
Re: Obtenir un jour ouvré hors férié
Bonjour,
dans le fichier exemple ci-dessous, saisis la date à tester en cellule B20 (couleur de fond de cellule jaune);
J'ai modifié ton exemple afin que la date que tu saisiras génère automatiquement les jours fériés pour l'ensemble de l'année (plage B2:B12 avec un fond bleu)
La formule intermédiaire (alambiquée, je l'avoue) qui te donnera la bonne date est en cellule B21:
Petite explication: j'ajoute 15 jours a ta date, et SOMMEPROD teste si cette date est présente dans la plage bleue (fériés) et rajoute un jour si c'est le cas; ensuite avec la fonction JOURSEM, j'ajoute encore 2 jours si on tombe un samedi, et 1 si c'est un dimanche. (afin de tomber sur le lundi suivant). Mais ce lundi peut aussi être férié donc on re-teste la présence de cette date dans la liste des fériés avec la formule en B22 qui renvoie1 si c'est un jour férié:
J'utilise pour ça deux lignes supplémentaires que j'additionne. (qui peuvent bien sûr être masquées)
Si on prend l'exemple du vendredi 15 mai 2020 comme date initiale, 15/05/2020 + 15 jours = samedi 30/5/20; on ajoute alors deux jours pour tomber sur le lundi 1er juin 2020. Or c'est le lundi de Pentecôte, on ajoute encore 1 jour. une aspirine?
Un fichier vaut mieux qu'un long discours:
COOordialement,
dans le fichier exemple ci-dessous, saisis la date à tester en cellule B20 (couleur de fond de cellule jaune);
J'ai modifié ton exemple afin que la date que tu saisiras génère automatiquement les jours fériés pour l'ensemble de l'année (plage B2:B12 avec un fond bleu)
La formule intermédiaire (alambiquée, je l'avoue) qui te donnera la bonne date est en cellule B21:
Code : Tout sélectionner
=B20+15+SOMMEPROD(B2:B12=(B20+15))+SI(JOURSEM(B20+15+SOMMEPROD(B2:B12=(B20+15));2)=6;2;SI(JOURSEM(B20+15+SOMMEPROD(B2:B12=(B20+15));2)=7;1;0))
Code : Tout sélectionner
=SOMMEPROD(B21=B2:B12)
Si on prend l'exemple du vendredi 15 mai 2020 comme date initiale, 15/05/2020 + 15 jours = samedi 30/5/20; on ajoute alors deux jours pour tomber sur le lundi 1er juin 2020. Or c'est le lundi de Pentecôte, on ajoute encore 1 jour. une aspirine?
Un fichier vaut mieux qu'un long discours:
COOordialement,
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Noonours procrastinateur perfectionniste: "Je fais rien, mais demain je l'ferai mieux"
Pour obtenir la réponse la plus précise possible, VEUILLEZ JOINDRE UN FICHIER
LibO 7.6.5.2 Stable et OpenOffice 4.1.15 sous Windows 10
Pour obtenir la réponse la plus précise possible, VEUILLEZ JOINDRE UN FICHIER
LibO 7.6.5.2 Stable et OpenOffice 4.1.15 sous Windows 10
-
- ManitOOu
- Messages : 3160
- Inscription : 06 juil. 2008 17:08
- Localisation : dans le Périgord
Re: Obtenir un jour ouvré hors férié
Bonjour,
A+
Plus simplement, on ajoute 14 jours à la date initiale et on prend le premier jour ouvrable suivant :fcka a écrit :Je dois ajouter 15 jours à une date (jusque là je m'en sors).
La date obtenue ne doit être ni un dimanche , ni un samedi, ni un jour férié. Si tel est le cas, je prends le 1er jour suivant qui n'est pas un samedi, un dimanche ou un jour férié.
Code : Tout sélectionner
=SERIE.JOUR.OUVRE(date_départ + 14 ; 1 ; plage_fériés)
-
- PassiOOnné
- Messages : 501
- Inscription : 11 mai 2013 00:11
- Localisation : Aix en Provence
Re: Obtenir un jour ouvré hors férié
EffectivementGérard24 a écrit :Plus simplement [...]
Je m’incline devant le grand ManitOOu
Noonours procrastinateur perfectionniste: "Je fais rien, mais demain je l'ferai mieux"
Pour obtenir la réponse la plus précise possible, VEUILLEZ JOINDRE UN FICHIER
LibO 7.6.5.2 Stable et OpenOffice 4.1.15 sous Windows 10
Pour obtenir la réponse la plus précise possible, VEUILLEZ JOINDRE UN FICHIER
LibO 7.6.5.2 Stable et OpenOffice 4.1.15 sous Windows 10
-
- Membre OOrganisé
- Messages : 53
- Inscription : 02 févr. 2018 22:15
[Résolu] Obtenir un jour ouvré hors férié
Bonjour,
ça marche !!
à Noonours et à gerard24 : merci pour votre aide.
Je n'avais même jamais pensé à calculer automatiquement les jours fériés... c'est super.
Pour la fonction SommeProd ( ) , je ne connaissais pas... malgré le super tuto https://forum.openoffice.org/fr/forum/v ... 29&t=38398 .
Pour la solution de gerard24 , effectivement c'est plus court pour la première étape.
(il faut cependant faire aussi le second test sans quoi cela ne passe pas avec le test 4 de mon fichier (date initiale : 31/7/2019)).
Encore un grand merci à vous deux.
ça marche !!
à Noonours et à gerard24 : merci pour votre aide.
Je n'avais même jamais pensé à calculer automatiquement les jours fériés... c'est super.
Pour la fonction SommeProd ( ) , je ne connaissais pas... malgré le super tuto https://forum.openoffice.org/fr/forum/v ... 29&t=38398 .
Pour la solution de gerard24 , effectivement c'est plus court pour la première étape.
(il faut cependant faire aussi le second test sans quoi cela ne passe pas avec le test 4 de mon fichier (date initiale : 31/7/2019)).
Encore un grand merci à vous deux.
HOME : (car pb avec base/postgresl avec version plus récente)
libre office Version: 6.0.6.2 (x64)
Win 8.1
DESK: (imposé)
libre office Version: 5 (x64)
Win 7
libre office Version: 6.0.6.2 (x64)
Win 8.1
DESK: (imposé)
libre office Version: 5 (x64)
Win 7
-
- GourOOu
- Messages : 9628
- Inscription : 18 sept. 2006 09:40
- Localisation : France
Re: [Résolu] Obtenir un jour ouvré hors férié
Bonjour à tous,
Si j'ajoute un férié en 16/08/19, le décalage me semble toujours conforme à tes attentes :
A +
Non reproduit :fcka a écrit :cela ne passe pas avec le test 4 de mon fichier (date initiale : 31/7/2019)
Si j'ajoute un férié en 16/08/19, le décalage me semble toujours conforme à tes attentes :
A +
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.