Est-il possible d'obtenir le nombre de jours ouvrés d'un calendrier pour une période donnée
Par exemple
Une ressource a un calendrier propre pour la période 2003-2004
Comment fait-on pour connaître le nombre de jours ouvrés de cette ressource pour l'anné 2003
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gérard Ducouret
Bonjour Nath,
Il faut avoir recours à VBA pour cela. Voir les propriétés Periode et Working dans le début de procédure ci-dessous :
Gérard Ducouret PragmaSoft ®
Sub CheckCongés(Ress, RessInit) 'La ressource sélectionnée a-t-elle des congés sur la période de la tâche ? 'Teste les jours d'absence de la ress. sur la durée de la tâche sélectionnée : Dim P As Period, Absence As Integer, JrFérié As Integer, Libellé As String, Libellé2 As String, Clic As Integer Dim Deb As Date, Fin As Date, i As Integer, Ratio 'As Long
Deb = ActiveCell.Task.Start Fin = ActiveCell.Task.Finish 'Propriété Period : réponse globale pour toute la durée, sans détail 'expression.Period(StartDate, FinishDate) Set P = ActiveProject.Calendar.Period(Deb, Fin)
i = -1 Do i = i + 1 If ThisProject.Resources(Ress).Calendar.Period(Deb + i, Fin).Working False Then Absence = Absence + 1 If ThisProject.Calendar.Period(Deb + i, Deb + i).Working = False Then JrFérié = JrFérié + 1 'Compte le nombre de jours fériés légaux dans le calendrier projet sur la période de la tâche End If End If Loop While i < P - 1
"Nath" a écrit dans le message de news:
Bonjour,
Est-il possible d'obtenir le nombre de jours ouvrés d'un calendrier pour une période donnée?
Par exemple : Une ressource a un calendrier propre pour la période 2003-2004. Comment fait-on pour connaître le nombre de jours ouvrés de cette ressource pour l'anné 2003?
D'avance merci pour votre aide!
Bonjour Nath,
Il faut avoir recours à VBA pour cela. Voir les propriétés Periode et
Working dans le début de procédure ci-dessous :
Gérard Ducouret
PragmaSoft ®
Sub CheckCongés(Ress, RessInit)
'La ressource sélectionnée a-t-elle des congés sur la période de la tâche ?
'Teste les jours d'absence de la ress. sur la durée de la tâche sélectionnée
:
Dim P As Period, Absence As Integer, JrFérié As Integer, Libellé As String,
Libellé2 As String, Clic As Integer
Dim Deb As Date, Fin As Date, i As Integer, Ratio 'As Long
Deb = ActiveCell.Task.Start
Fin = ActiveCell.Task.Finish
'Propriété Period : réponse globale pour toute la durée, sans détail
'expression.Period(StartDate, FinishDate)
Set P = ActiveProject.Calendar.Period(Deb, Fin)
i = -1
Do
i = i + 1
If ThisProject.Resources(Ress).Calendar.Period(Deb + i, Fin).Working False Then
Absence = Absence + 1
If ThisProject.Calendar.Period(Deb + i, Deb + i).Working = False
Then
JrFérié = JrFérié + 1 'Compte le nombre de jours fériés légaux
dans le calendrier projet sur la période de la tâche
End If
End If
Loop While i < P - 1
"Nath" <anonymous@discussions.microsoft.com> a écrit dans le message de
news: 0E6E5F82-A8AD-402A-B0F2-111E899E6D4F@microsoft.com...
Bonjour,
Est-il possible d'obtenir le nombre de jours ouvrés d'un calendrier pour
une période donnée?
Par exemple :
Une ressource a un calendrier propre pour la période 2003-2004.
Comment fait-on pour connaître le nombre de jours ouvrés de cette
ressource pour l'anné 2003?
Il faut avoir recours à VBA pour cela. Voir les propriétés Periode et Working dans le début de procédure ci-dessous :
Gérard Ducouret PragmaSoft ®
Sub CheckCongés(Ress, RessInit) 'La ressource sélectionnée a-t-elle des congés sur la période de la tâche ? 'Teste les jours d'absence de la ress. sur la durée de la tâche sélectionnée : Dim P As Period, Absence As Integer, JrFérié As Integer, Libellé As String, Libellé2 As String, Clic As Integer Dim Deb As Date, Fin As Date, i As Integer, Ratio 'As Long
Deb = ActiveCell.Task.Start Fin = ActiveCell.Task.Finish 'Propriété Period : réponse globale pour toute la durée, sans détail 'expression.Period(StartDate, FinishDate) Set P = ActiveProject.Calendar.Period(Deb, Fin)
i = -1 Do i = i + 1 If ThisProject.Resources(Ress).Calendar.Period(Deb + i, Fin).Working False Then Absence = Absence + 1 If ThisProject.Calendar.Period(Deb + i, Deb + i).Working = False Then JrFérié = JrFérié + 1 'Compte le nombre de jours fériés légaux dans le calendrier projet sur la période de la tâche End If End If Loop While i < P - 1
"Nath" a écrit dans le message de news:
Bonjour,
Est-il possible d'obtenir le nombre de jours ouvrés d'un calendrier pour une période donnée?
Par exemple : Une ressource a un calendrier propre pour la période 2003-2004. Comment fait-on pour connaître le nombre de jours ouvrés de cette ressource pour l'anné 2003?