Bonjour,
n'ayant pas de réponse sur ce forum, je suis aller poser ma question ailleurs et j'ai trouvé !!!
je poste la solution si jamais elle pouvait servir à d'autres...
bonne journée @ tous,
cordialement
Marc
Function CalculCongés(D As Range, F As Range) As Integer
Dim Deb As Date, Fin As Date, Ctr As Integer, Bonus As Byte
Application.Volatile
Deb = D.Value
Fin = F.Value
For I = Deb To Fin
If Weekday(I) = 2 Then Ctr = 1
If Weekday(I) = 3 And Ctr = 1 Then Ctr = 2
If Weekday(I) = 4 And Ctr = 2 Then Ctr = 3
If Weekday(I) = 5 And Ctr = 3 Then Ctr = 4
If Weekday(I) = 6 And Ctr = 4 Then Ctr = 5
If Weekday(I) = 7 And Ctr = 5 Then
Ctr = 0
If IsNumeric(Application.Match(I * 1, Range("fériés"), 0)) Then
Bonus = Bonus + 1
End If
End If
Next I
If Weekday(Fin) = 6 Then
If IsNumeric(Application.Match((Fin + 1) * 1, Range("fériés"), 0)) Then
Bonus = Bonus + 1
End If
End If
CalculCongés = Application.NetworkDays(Deb, Fin, Range("fériés")) - Bonus
End Function