(RESOLU)Date fin addition date debut + duree+nbr jours feries

chaelie2015

XLDnaute Accro
Bonjour Forum
cette fois ,dans USF ,Je souhaite calculer date fin dans un TextBox4 (il s’affiche automatiquement)

Date début TextBox2
Durée TextBox3
Nbre de jours féries ComboBox2

TextBox4 = TextBox2+TextBox3+ComboBox2+1

Salutation
 

Roland_M

XLDnaute Barbatruc
bonjour,

effectivement je viens d'essayer le site affiche ERROR !?
et tous les autres aussi, c'est un bug du site en cours de modif . . . !
malheureusement je n'ai plus ce fichier !
voyant tu ne répondais plus j'ai supprimer les fichiers en attente !
avec d'autres d'ailleurs pour qui on travail et aucun retour, c'est assez pénible !

maintenant, je sais pas si tu lis bien les messages car tu n'y réponds pas !?
je te pose des questions mais tu ne réponds à rien, alors moi je vais laisser tomber !

exemple j'ai mis ceci dans mon message avec un EDIT:
----------------------------------------------------------------
EDIT:
tu dis ici:
encore merci , mais selon mon post#7, j'ai bien précisé que les jours de semaine a compter sont Lundi-samedi sans dimanche, donc selon mon exemple dans le post#7 j'aurai la date Retour : 28/07/2016 et non pas 26/07/2016

je comprend pas du tout !? en décomptant les dimanches tu as une date supérieure !?
tu m'as bien demandé: TextBox4 = CDate(TextBox2) + Val(TextBox3) + Val(ComboBox2) + 1
tout ceci c'était bien + + + !?

moi je croyais comprendre ceci:
04/07/2016 + 20jours + 1férié +1 j'ai jusqu'au 26 - 3 dimanches soit 23/07/2017 !?
--------------------------------------------------------------------------------------------------

tu aurais pu au moins répondre à ça !?
 

chaelie2015

XLDnaute Accro
Re ROLAND
JE suis désolé pour ces retards
-------------------
moi je croyais comprendre ceci:
04/07/2016 + 20jours + 1férié +1 j'ai jusqu'au 26 - 3 dimanches soit 23/07/2017 !?
-------------------
oui c'est ça moi je ne vois pas comment ne correspond pas a mon jours de retour????
alors voyant ça :
du 04/07/2016 + jours20( sans dimanche ) : 26/07/2016
(premiere semaine : du 04/07/2016 -09/07/2016 => 06 jours
2eme semaine du 11/07/2016 - 16/07/2016 => 06 jours
3eme semaine du 18/07/2016 - 23/07/2016 => 06jours
4eme semaine : du 25/07/2016 - 26/07/2016 => 02 jours)
donc soit au total 20 jours d'ou la date est 26/07/2016
+férié : j'ai 27/07/2016
et+1 par défaut dans la formule : j'ai 28/07/2016
a+
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Bonjour,

voir cette simulation qui pourra t'aider et facilement transposable dans tes codes !
pour l'essayer tu copies tout dans un module et tu l'exécutes avec F5
respectes bien les Cdate() et les Val() !


VB:
'du 04/07/2016 + jours20( sans dimanche ) : 26/07/2016
'(premiere semaine : du 04/07/2016 -09/07/2016 => 06 jours
'2eme semaine du 11/07/2016 - 16/07/2016 => 06 jours
'3eme semaine du 18/07/2016 - 23/07/2016 => 06 jours
'4eme semaine du 25/07/2016 - 26/07/2016 => 02 jours)
'donc soit au total 20 jours d'ou la date est 26/07/2016
'+férié : j'ai 27/07/2016
'et+1 par défaut dans la formule : j'ai 28/07/2016

Sub Essai()
'ceci pour simuler tes contrôles
Dim TextBox2$, TextBox3$, TextBox4$, ComboBox2$, D As Date
'les valeurs sensées être dans tes contrôles
TextBox2 = "04/07/2016"
TextBox3 = "20" 'jours
ComboBox2 = "1" 'férié
TextBox4 = CDate(TextBox2) + Val(TextBox3) + Val(ComboBox2)
For D = CDate(TextBox2) To CDate(TextBox4) + 1
 If Weekday(D, vbMonday) = 7 Then TextBox4 = CDate(TextBox4) + 1
Next

MsgBox TextBox4
End Sub
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Bonjour,

à quel endroit ?
sur base de quelle date ?

ceci: If CDate(TextBox4) = Weekday(D, vbMonday) = 7 Then MsgBox "C'est un DIMANCE"
D < ceci c'est la date de la boucle
TextBox4 < ceci la date de fin

tu ne veux tout de même pas afficher à chaque dimanche dans la boucle !?
 

chaelie2015

XLDnaute Accro
Bonjour Roland
merci pour les remarques et les réponse
Bonjour,

à quel endroit ?
sur base de quelle date ?
sur la base de Date début , nombre de jours et les jours féries et a la fin de la saisi de ces derniers, je souhaite afficher ce message, une fois le TextBox4 contient une date d'ou le jour de la semaine est Dimanche

Bonjour,

tu ne veux tout de même pas afficher à chaque dimanche dans la boucle !?
non une fois seulement a la fin de la saisi, si TextBox4 contient le Dimanche
a+
 

Roland_M

XLDnaute Barbatruc
Bonjour,

à la fin de:
Private Sub InitTextBox4()
tu rajoutes ceci:
If Weekday(TextBox4, vbMonday) = 7 Then MsgBox "Attention: " & TextBox4 & vbLf & "tombe un dimanche !", vbInformation, ""

VB:
Private Sub InitTextBox4() '######
Dim D As Date
TextBox4 = CDate(TextBox2) + Val(TextBox3) + Val(ComboBox2)
For D = CDate(TextBox2) To CDate(TextBox4) + 1
If Weekday(D, vbMonday) = 7 Then TextBox4 = CDate(TextBox4) + 1
Next
If Weekday(TextBox4, vbMonday) = 7 Then MsgBox "Attention: " & TextBox4 & vbLf & "tombe un dimanche !", vbInformation, ""
End Sub
 

chaelie2015

XLDnaute Accro
Bonjour,

à la fin de:
Private Sub InitTextBox4()
tu rajoutes ceci:
If Weekday(TextBox4, vbMonday) = 7 Then MsgBox "Attention: " & TextBox4 & vbLf & "tombe un dimanche !", vbInformation, ""

VB:
Private Sub InitTextBox4() '######
Dim D As Date
TextBox4 = CDate(TextBox2) + Val(TextBox3) + Val(ComboBox2)
For D = CDate(TextBox2) To CDate(TextBox4) + 1
If Weekday(D, vbMonday) = 7 Then TextBox4 = CDate(TextBox4) + 1
Next
If Weekday(TextBox4, vbMonday) = 7 Then MsgBox "Attention: " & TextBox4 & vbLf & "tombe un dimanche !", vbInformation, ""
End Sub
Re bonjour
encore une fois merci Roland , c'est exactement ce que je cherchais
A+
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16