XL 2013 Ordonnancement : Calcul d'une date de fin

marcel luthi

XLDnaute Nouveau
Dans une macro, je souhaite calculer la date de fin d'une opération à partir d'une date de début et d'une durée (en jours) en tenant compte des jours ouvrables et des jours fériés.
Voici l'instruction qui ne fonctionne pas (erreur 438) :
finop = Application.WorksheetFunction.serie.jour.ouvre(débutop, 15,ferié)
où débutop = date de début issue de la table
15 = nombre de jours
ferié = table des jours fériés
Est-ce que la formule et les paramètres sont corrects ?
Par avance merci pour votre aide
 
Solution
Bonjour Marcel,
VBA ne parle qu'anglais.
Essayez :
VB:
finop = Application.WorksheetFunction.WORKDAY(débutop, 15,ferié)
En supposant que debutop et férié soient correct;
Le mieux dans ce genre de cas est d'utiliser l'enregistreur de macro.
Dans une cellule vous mettez :
Code:
=SERIE.JOUR.OUVRE(14/6/2021;15;G5:H18)
Il traduit par :
Code:
ActiveCell.FormulaR1C1 = "=WORKDAY(14/6/2021,15,R[-2]C[4]:R[11]C[5])"
et après vous bidouillez.
NB: Je suppose que débutop, et ferié sont des tableaux VBA. Si ce sont des tableaux XL alors c'est : [débutop], et ,[ferié].
Bonsoir Sylvanu,
Je te remercie infiniment, j'ai testé ta proposition et ça fonctionne très bien. Les dates de début et de fin des opérations des ordres de fabrication et/ou...

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Marcel,
VBA ne parle qu'anglais.
Essayez :
VB:
finop = Application.WorksheetFunction.WORKDAY(débutop, 15,ferié)
En supposant que debutop et férié soient correct;
Le mieux dans ce genre de cas est d'utiliser l'enregistreur de macro.
Dans une cellule vous mettez :
Code:
=SERIE.JOUR.OUVRE(14/6/2021;15;G5:H18)
Il traduit par :
Code:
ActiveCell.FormulaR1C1 = "=WORKDAY(14/6/2021,15,R[-2]C[4]:R[11]C[5])"
et après vous bidouillez.
NB: Je suppose que débutop, et ferié sont des tableaux VBA. Si ce sont des tableaux XL alors c'est : [débutop], et ,[ferié].
 
Dernière édition:

marcel luthi

XLDnaute Nouveau
Bonjour Marcel,
VBA ne parle qu'anglais.
Essayez :
VB:
finop = Application.WorksheetFunction.WORKDAY(débutop, 15,ferié)
En supposant que debutop et férié soient correct;
Le mieux dans ce genre de cas est d'utiliser l'enregistreur de macro.
Dans une cellule vous mettez :
Code:
=SERIE.JOUR.OUVRE(14/6/2021;15;G5:H18)
Il traduit par :
Code:
ActiveCell.FormulaR1C1 = "=WORKDAY(14/6/2021,15,R[-2]C[4]:R[11]C[5])"
et après vous bidouillez.
NB: Je suppose que débutop, et ferié sont des tableaux VBA. Si ce sont des tableaux XL alors c'est : [débutop], et ,[ferié].
Bonsoir Sylvanu,
Je te remercie infiniment, j'ai testé ta proposition et ça fonctionne très bien. Les dates de début et de fin des opérations des ordres de fabrication et/ou des projets sont calculées en tenant compte des jours ouvrables uniquement. C'est parfait.
Encore un immense merci pour ton aide et la rapidité de ta réponse.
Bonne soirée.
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 941
Membres
101 846
dernier inscrit
Silhabib