Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés
entre 2 dates).
Je n'arrive pas à trouver cette fonction en VBA, même en utilisant
WorksheetFunction.
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
Private Function NetWorkDays(ByVal dBegin As Date, ByVal dEnd As Date) NetWorkDays = (Int(dEnd / 7) - Int(dBegin / 7)) * 5 + WorksheetFunction.Max(0, (dEnd Mod 7) - 1) - WorksheetFunction.Max(0, (dBegin Mod 7) - 2) End Function
Je me suis inspiré de... http://j-walk.com/ss/excel/eee/eee020.txt
-- Patrick
"LSteph" wrote:
Bonsoir, Perhaps WeekDays Isn't it?
Mais AV a fait un truc où il y a tout et qui doit s'trouver à Misangeville
lSteph
"Patrick Fredin" a écrit dans le message de news:
Bonjour,
Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés entre 2 dates). Je n'arrive pas à trouver cette fonction en VBA, même en utilisant WorksheetFunction.
Avez-vous une idée ?
Merci d'avance.
-- Patrick
Bonjour,
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction
NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
Private Function NetWorkDays(ByVal dBegin As Date, ByVal dEnd As Date)
NetWorkDays = (Int(dEnd / 7) - Int(dBegin / 7)) * 5 +
WorksheetFunction.Max(0, (dEnd Mod 7) - 1) - WorksheetFunction.Max(0, (dBegin
Mod 7) - 2)
End Function
Je me suis inspiré de...
http://j-walk.com/ss/excel/eee/eee020.txt
--
Patrick
"LSteph" wrote:
Bonsoir,
Perhaps WeekDays Isn't it?
Mais AV a fait un truc où il y a tout et qui doit s'trouver à Misangeville
lSteph
"Patrick Fredin" <nospam_patrick.fredin@iquebec.com> a écrit dans le message
de news: B99ACDC5-5166-40D7-BD06-89FC6288AF5C@microsoft.com...
Bonjour,
Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés
entre 2 dates).
Je n'arrive pas à trouver cette fonction en VBA, même en utilisant
WorksheetFunction.
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
Private Function NetWorkDays(ByVal dBegin As Date, ByVal dEnd As Date) NetWorkDays = (Int(dEnd / 7) - Int(dBegin / 7)) * 5 + WorksheetFunction.Max(0, (dEnd Mod 7) - 1) - WorksheetFunction.Max(0, (dBegin Mod 7) - 2) End Function
Je me suis inspiré de... http://j-walk.com/ss/excel/eee/eee020.txt
-- Patrick
"LSteph" wrote:
Bonsoir, Perhaps WeekDays Isn't it?
Mais AV a fait un truc où il y a tout et qui doit s'trouver à Misangeville
lSteph
"Patrick Fredin" a écrit dans le message de news:
Bonjour,
Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés entre 2 dates). Je n'arrive pas à trouver cette fonction en VBA, même en utilisant WorksheetFunction.
Avez-vous une idée ?
Merci d'avance.
-- Patrick
michdenis
Bonjour Patrick,
Est-ce que tu veux dire que quelque chose comme ceci ne fonctionne pas chez toi,
MsgBox NetWorkDays(Date, Date + 100)
= 73 = nombre de jours ouvrables entre 2 dates (sans congé férié)
Salutations!
"Patrick Fredin" a écrit dans le message de news:
Bonjour,
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
Private Function NetWorkDays(ByVal dBegin As Date, ByVal dEnd As Date) NetWorkDays = (Int(dEnd / 7) - Int(dBegin / 7)) * 5 + WorksheetFunction.Max(0, (dEnd Mod 7) - 1) - WorksheetFunction.Max(0, (dBegin Mod 7) - 2) End Function
Je me suis inspiré de... http://j-walk.com/ss/excel/eee/eee020.txt
-- Patrick
"LSteph" wrote:
Bonsoir, Perhaps WeekDays Isn't it?
Mais AV a fait un truc où il y a tout et qui doit s'trouver à Misangeville
lSteph
"Patrick Fredin" a écrit dans le message de news:
Bonjour,
Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés entre 2 dates). Je n'arrive pas à trouver cette fonction en VBA, même en utilisant WorksheetFunction.
Avez-vous une idée ?
Merci d'avance.
-- Patrick
Bonjour Patrick,
Est-ce que tu veux dire que quelque chose comme ceci ne fonctionne pas chez toi,
MsgBox NetWorkDays(Date, Date + 100)
= 73 = nombre de jours ouvrables entre 2 dates (sans congé férié)
Salutations!
"Patrick Fredin" <nospam_patrick.fredin@iquebec.com> a écrit dans le message de news:
9879D34A-6624-49F9-BC47-94E3EFA5355B@microsoft.com...
Bonjour,
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction
NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
Private Function NetWorkDays(ByVal dBegin As Date, ByVal dEnd As Date)
NetWorkDays = (Int(dEnd / 7) - Int(dBegin / 7)) * 5 +
WorksheetFunction.Max(0, (dEnd Mod 7) - 1) - WorksheetFunction.Max(0, (dBegin
Mod 7) - 2)
End Function
Je me suis inspiré de...
http://j-walk.com/ss/excel/eee/eee020.txt
--
Patrick
"LSteph" wrote:
Bonsoir,
Perhaps WeekDays Isn't it?
Mais AV a fait un truc où il y a tout et qui doit s'trouver à Misangeville
lSteph
"Patrick Fredin" <nospam_patrick.fredin@iquebec.com> a écrit dans le message
de news: B99ACDC5-5166-40D7-BD06-89FC6288AF5C@microsoft.com...
Bonjour,
Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés
entre 2 dates).
Je n'arrive pas à trouver cette fonction en VBA, même en utilisant
WorksheetFunction.
Est-ce que tu veux dire que quelque chose comme ceci ne fonctionne pas chez toi,
MsgBox NetWorkDays(Date, Date + 100)
= 73 = nombre de jours ouvrables entre 2 dates (sans congé férié)
Salutations!
"Patrick Fredin" a écrit dans le message de news:
Bonjour,
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
Private Function NetWorkDays(ByVal dBegin As Date, ByVal dEnd As Date) NetWorkDays = (Int(dEnd / 7) - Int(dBegin / 7)) * 5 + WorksheetFunction.Max(0, (dEnd Mod 7) - 1) - WorksheetFunction.Max(0, (dBegin Mod 7) - 2) End Function
Je me suis inspiré de... http://j-walk.com/ss/excel/eee/eee020.txt
-- Patrick
"LSteph" wrote:
Bonsoir, Perhaps WeekDays Isn't it?
Mais AV a fait un truc où il y a tout et qui doit s'trouver à Misangeville
lSteph
"Patrick Fredin" a écrit dans le message de news:
Bonjour,
Dans une feuille de calcul, il y a la fonction "NETWORKDAYS" (Jours ouvrés entre 2 dates). Je n'arrive pas à trouver cette fonction en VBA, même en utilisant WorksheetFunction.
Avez-vous une idée ?
Merci d'avance.
-- Patrick
AV
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
MsgBox Evaluate("NetWorkDays(" & Date & "," & Date & "+ 100)") Les macros complémentaires Utilitaire d'analyse ET Utilitaire d'analyse vba doivent être cochées !
MsgBox Evaluate("NB.JOURS.OUVRES(" & Date & "," & Date & "+ 7)") La macro complémentaire Utilitaire d'analyse doit être cochée !
AV
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction
NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
MsgBox Evaluate("NetWorkDays(" & Date & "," & Date & "+ 100)")
Les macros complémentaires Utilitaire d'analyse ET Utilitaire d'analyse vba
doivent être cochées !
MsgBox Evaluate("NB.JOURS.OUVRES(" & Date & "," & Date & "+ 7)")
La macro complémentaire Utilitaire d'analyse doit être cochée !
Je ne sais pas pourquoi, mais en VBA je n'arrive pas à trouver la fonction NETWORKDAYS. Mais j'ai trouvé une alternative qui donne le même résultat :
MsgBox Evaluate("NetWorkDays(" & Date & "," & Date & "+ 100)") Les macros complémentaires Utilitaire d'analyse ET Utilitaire d'analyse vba doivent être cochées !
MsgBox Evaluate("NB.JOURS.OUVRES(" & Date & "," & Date & "+ 7)") La macro complémentaire Utilitaire d'analyse doit être cochée !