Je souhaite dans une colonne, =E0 partir d'une premi=E8re=20
date en A1, qu'en B1 s'affiche par exemple une date tel=20
que A1 + 1 semaine, et que C1=3D B1 + 2 semaines, D1 =3D C1 +=20
10 jours, etc.=20
Ceci en ne comptabilisant que les jours ouvr=E9s...=20
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
FxM
Bonsoir Karine,
as-tu essayé =serie.jour.ouvres(date;jour;fériés) ? Je viens de faire l'essai avec les jours -> OK, avec les jours fériés -> problème ?
@+ FxM
Karine wrote:
Bonjour,
Je souhaite dans une colonne, à partir d'une première date en A1, qu'en B1 s'affiche par exemple une date tel que A1 + 1 semaine, et que C1= B1 + 2 semaines, D1 = C1 + 10 jours, etc. Ceci en ne comptabilisant que les jours ouvrés...
merci de votre aide
Bonsoir Karine,
as-tu essayé =serie.jour.ouvres(date;jour;fériés) ?
Je viens de faire l'essai avec les jours -> OK,
avec les jours fériés -> problème ?
@+
FxM
Karine wrote:
Bonjour,
Je souhaite dans une colonne, à partir d'une première
date en A1, qu'en B1 s'affiche par exemple une date tel
que A1 + 1 semaine, et que C1= B1 + 2 semaines, D1 = C1 +
10 jours, etc.
Ceci en ne comptabilisant que les jours ouvrés...
as-tu essayé =serie.jour.ouvres(date;jour;fériés) ? Je viens de faire l'essai avec les jours -> OK, avec les jours fériés -> problème ?
@+ FxM
Karine wrote:
Bonjour,
Je souhaite dans une colonne, à partir d'une première date en A1, qu'en B1 s'affiche par exemple une date tel que A1 + 1 semaine, et que C1= B1 + 2 semaines, D1 = C1 + 10 jours, etc. Ceci en ne comptabilisant que les jours ouvrés...
merci de votre aide
Frédéric Sigonneau
Bonsoir,
Essaye cette fonction perso VBA :
'================= Function PlusJOuvres(D, NbJours) Dim Dt, i, An Dim NbOr, Epacte As Integer Dim PLune, LPaques, Arr(10) As Long
Dt = CLng(D) Do Dt = Dt + 1 An = Year(Dt) 'modif Alain Cros, mpfe 'calcul du Lundi de Pâques NbOr = (An Mod 19) + 1 Epacte = (11 * NbOr - (3 + Int(2 + Int(An / 100)) * 3 / 7)) Mod 30 PLune = DateSerial(An, 4, 19) - ((Epacte + 6) Mod 30) If Epacte = 24 Then PLune = PLune - 1 If Epacte = 25 And (An >= 1900 And An < 2200) Then PLune = PLune - 1 LPaques = PLune - Weekday(PLune) + vbMonday + 7 'Lundi Paques
'ajoute si ouvré If (IsError(Application.Match(Dt, Arr, 0))) = True And _ (Weekday(Dt, vbMonday) < 6) = True Then i = i + 1 End If Loop Until i = NbJours
PlusJOuvres = Dt
End Function 'fs '================= Après l'avoir recopiée dans un module standard d'un classeur, tu peux, dans une feuille de calcul de ce même classeur, écrire en B1 (pour une date de départ en A1)
=PlusOuvres(A1;7)
pour obtenir la date d'A1 + 7 jours ouvrés.
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour,
Je souhaite dans une colonne, à partir d'une première date en A1, qu'en B1 s'affiche par exemple une date tel que A1 + 1 semaine, et que C1= B1 + 2 semaines, D1 = C1 + 10 jours, etc. Ceci en ne comptabilisant que les jours ouvrés...
merci de votre aide
Bonsoir,
Essaye cette fonction perso VBA :
'================= Function PlusJOuvres(D, NbJours)
Dim Dt, i, An
Dim NbOr, Epacte As Integer
Dim PLune, LPaques, Arr(10) As Long
Dt = CLng(D)
Do
Dt = Dt + 1
An = Year(Dt) 'modif Alain Cros, mpfe
'calcul du Lundi de Pâques
NbOr = (An Mod 19) + 1
Epacte = (11 * NbOr - (3 + Int(2 + Int(An / 100)) * 3 / 7)) Mod 30
PLune = DateSerial(An, 4, 19) - ((Epacte + 6) Mod 30)
If Epacte = 24 Then PLune = PLune - 1
If Epacte = 25 And (An >= 1900 And An < 2200) Then PLune = PLune - 1
LPaques = PLune - Weekday(PLune) + vbMonday + 7 'Lundi Paques
'ajoute si ouvré
If (IsError(Application.Match(Dt, Arr, 0))) = True And _
(Weekday(Dt, vbMonday) < 6) = True Then
i = i + 1
End If
Loop Until i = NbJours
PlusJOuvres = Dt
End Function 'fs
'=================
Après l'avoir recopiée dans un module standard d'un classeur, tu peux, dans une
feuille de calcul de ce même classeur, écrire en B1 (pour une date de départ en
A1)
=PlusOuvres(A1;7)
pour obtenir la date d'A1 + 7 jours ouvrés.
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !
Bonjour,
Je souhaite dans une colonne, à partir d'une première
date en A1, qu'en B1 s'affiche par exemple une date tel
que A1 + 1 semaine, et que C1= B1 + 2 semaines, D1 = C1 +
10 jours, etc.
Ceci en ne comptabilisant que les jours ouvrés...
'ajoute si ouvré If (IsError(Application.Match(Dt, Arr, 0))) = True And _ (Weekday(Dt, vbMonday) < 6) = True Then i = i + 1 End If Loop Until i = NbJours
PlusJOuvres = Dt
End Function 'fs '================= Après l'avoir recopiée dans un module standard d'un classeur, tu peux, dans une feuille de calcul de ce même classeur, écrire en B1 (pour une date de départ en A1)
=PlusOuvres(A1;7)
pour obtenir la date d'A1 + 7 jours ouvrés.
FS -- Frédéric Sigonneau [MVP Excel - né un sans-culottide] Gestions de temps, VBA pour Excel : http://perso.wanadoo.fr/frederic.sigonneau Si votre question sur Excel est urgente, évitez ma bal !
Bonjour,
Je souhaite dans une colonne, à partir d'une première date en A1, qu'en B1 s'affiche par exemple une date tel que A1 + 1 semaine, et que C1= B1 + 2 semaines, D1 = C1 + 10 jours, etc. Ceci en ne comptabilisant que les jours ouvrés...
merci de votre aide
AV
Autre soluce... Sans les macros complémentaires et avec une plage nommée "JrF" (liste des jours fériés) Matricielle (validation par ctrl+maj+entrée)