Spécifier le jour du début de la semaine dans SERIE.JOUR.OUVRE

apt

XLDnaute Impliqué
Bonsoir à tous,

Est-ce qu'on peut spécifier le jour de début de la semaine pour calculer les jours ouvrés ?

Comme par exemple :

=SERIE.JOUR.OUVRE(date_début;nb_jours;jours_fériés;vbSunday)

Si la semaine commence par un Dimanche.

Merci d'avance.
 

Modeste geedee

XLDnaute Barbatruc
Re : Spécifier le jour du début de la semaine dans SERIE.JOUR.OUVRE

Bonsour®
:rolleyes:
il n'y a aucune notion de semaine dans la fonction SERIE.JOUR.OUVRE
par défaut les jours non travaillés (2) sont Samedi et dimanche.

le 1er argument est la date de début.
le 2nd argument est le décalage en nombre de jour calendaires.
le 3eme argument est une liste de jours non travaillés (féries, congés,...)

pour une semaine de 6 jours travaillés cette fonction n'est pas applicable...

voir autres solutions évoquées ici régulièrement dans discussions similaires
 

piga25

XLDnaute Barbatruc
Re : Spécifier le jour du début de la semaine dans SERIE.JOUR.OUVRE

Bonjour,

Peut être tout compris la question !!

Pourquoi pas avec la fonction : =SERIE.JOUR.OUVRE.INTL(date_départ, nb_jours, [nb_jours_week-end], [jours_fériés])
Comme ceci il est possible de faire des semaines à 6 jours travaillés
Ex : =SERIE.JOUR.OUVRE.INTL(date_départ, nb_jours,"0010000", [jours_fériés])
Ici "0010000" correspond au mercredi non travaillé.
 

charl0tte

XLDnaute Nouveau
Re : Spécifier le jour du début de la semaine dans SERIE.JOUR.OUVRE

J'utilise Excel 2010 et effectivement je viens de tester la fonction SERIE.JOUR.OUVRE.INTL qui marche parfaitement. Je suis actuellement en train de calculer les calendriers de réservation sur mon site www.immobilier-agence.net et j'avais pas mal de problème sur l'automatisation de mes plannings. Je pense que cette fonction va me faciliter grandement la tache.
 

apt

XLDnaute Impliqué
Re : Spécifier le jour du début de la semaine dans SERIE.JOUR.OUVRE

Bonjour,

Voila deux fonctions our Excel 2007 et qui remplacent celles dans Excel 2010 (J'ai adapté la première ce qui m'a facilité d'en trouver la deuxième)


Code:
Public Function PlusJOuvres(D, NbJours)
    Dim Dt, i
    Dim An As Integer
 
    Dt = CLng(D)
    Do Until i = NbJours - 1
 
        Dt = Dt + 1
        'ajoute si ouvré
        If (IsError(Application.Match(Dt, [Fériés], 0))) = True And _
           (Weekday(Dt, vbSunday) < 6) = True Then
            i = i + 1
        End If
    Loop
    PlusJOuvres = Dt
 
End Function

'-------------------------------------------------------
Public Function NBJOuvres(Dd, Df)
    Dim Dt, i
    Dim An As Integer
 
    Dt = CLng(Df)
 
    Do
        'ajoute si ouvré
        If (IsError(Application.Match(Dt, [Fériés], 0))) = True And _
           (Weekday(Dt, vbSunday) < 6) = True Then
            i = i + 1
        End If
        Dt = Dt - 1
 
    Loop Until CLng(Dd) > CLng(Dt)
 
    NBJOuvres = i
 
End Function

:)
 

Discussions similaires

Réponses
14
Affichages
599
Réponses
5
Affichages
394

Statistiques des forums

Discussions
312 523
Messages
2 089 309
Membres
104 119
dernier inscrit
karbone57