Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Userform : Champs calculés avec des dates, pb de syntaxe...

2 réponses
Avatar
Domi
Bonjour à tous
Je voudrais faire 2 types de calculs sur des dates dans un userform :
1°) Comment dans un textbox DateCalc, connaître la date = Date qui figure
dans le textbox DateIni + valeur numérique qui figure dans le textbox Nbj
Ou comment remplacer mon "4" par Nbj ?

Me.DateCalc= Format(CDate(DateIni) + 4, "dddd dd mmm yyyy")

2°) problème inverse : comment connaître dans un textbox le nombres de jours
ouvrés qui séparent 2 dates saisies dans 2 autres textbox , en tenant compte
d'une liste de jours fériés "joursferies" ?

Pour info, j'utilise actuellement ce code pour connaître dans dateFab3 une
date = dateExped - 3 jours ouvrés
Me.dateFab3.Value = Format(workday(CDate(dateExped), -3,
Range("joursferies")), "dddd dd mmm yyyy")

Je tourne en rond...
Merci pour votre aide.
Domi

2 réponses

Avatar
MichDenis
Bonjour Domi,

A ) tu dois t'assurer que les dates saisies par l'usager correspond bien à ce que tu veux. Pour ce faire, tu peux utiliser le
contrôle Calandar ou DtPicker ou encore avoir recours à 3 textbox pour insérer les jours / mois / années.

B ) En supposant que TextBox2 est utilisé pour entrer le nombre de jours pour incrémenter ta date
En supposant que Textbox1 a été validé par une procédure qui t'assure de la validité de la date saisie par l'usager

Nbj = Val(TextBox2)
Ladate = Cdate(Textbox1)
NouvelleDate = DateSerial(Year(ladate), Month(ladate), Day(ladate) +Nbj)


C ) Pour pouvoir utiliser la fonction =NB.JOURS.OUVRES() en vba, tu dois ajouter la référence suivante à ton classeur :
Fenêtre VBE(visual basic editor) , barre des menus / outils / references / atpvbaen.xls

D ) Après tu peux utiliser la fonction NetWorkdays() avec les mêmes arguments de la fonction de la feuille NB.JOURS.OUVRES()



Salutations!


"Domi" a écrit dans le message de news:
Bonjour à tous
Je voudrais faire 2 types de calculs sur des dates dans un userform :
1°) Comment dans un textbox DateCalc, connaître la date = Date qui figure
dans le textbox DateIni + valeur numérique qui figure dans le textbox Nbj
Ou comment remplacer mon "4" par Nbj ?

Me.DateCalc= Format(CDate(DateIni) + 4, "dddd dd mmm yyyy")

2°) problème inverse : comment connaître dans un textbox le nombres de jours
ouvrés qui séparent 2 dates saisies dans 2 autres textbox , en tenant compte
d'une liste de jours fériés "joursferies" ?

Pour info, j'utilise actuellement ce code pour connaître dans dateFab3 une
date = dateExped - 3 jours ouvrés
Me.dateFab3.Value = Format(workday(CDate(dateExped), -3,
Range("joursferies")), "dddd dd mmm yyyy")

Je tourne en rond...
Merci pour votre aide.
Domi
Avatar
Domi
Merci, cela correspond parfaitement à mon attente, je n'aurais pas trouvé ça
seul !
J'ai un petit souci avec le 2°) mais cela est du au format des dates... je
vais reposer une question sur le forum à ce sujet...
Encore merci
Domi

"MichDenis" a écrit dans le message de
news:%
Bonjour Domi,

A ) tu dois t'assurer que les dates saisies par l'usager correspond bien à
ce que tu veux. Pour ce faire, tu peux utiliser le

contrôle Calandar ou DtPicker ou encore avoir recours à 3 textbox pour
insérer les jours / mois / années.


B ) En supposant que TextBox2 est utilisé pour entrer le nombre de jours
pour incrémenter ta date

En supposant que Textbox1 a été validé par une procédure qui
t'assure de la validité de la date saisie par l'usager


Nbj = Val(TextBox2)
Ladate = Cdate(Textbox1)
NouvelleDate = DateSerial(Year(ladate), Month(ladate), Day(ladate) +Nbj)


C ) Pour pouvoir utiliser la fonction =NB.JOURS.OUVRES() en vba, tu dois
ajouter la référence suivante à ton classeur :

Fenêtre VBE(visual basic editor) , barre des menus / outils /
references / atpvbaen.xls


D ) Après tu peux utiliser la fonction NetWorkdays() avec les mêmes
arguments de la fonction de la feuille NB.JOURS.OUVRES()




Salutations!


"Domi" a écrit dans le message de news:


Bonjour à tous
Je voudrais faire 2 types de calculs sur des dates dans un userform :
1°) Comment dans un textbox DateCalc, connaître la date = Date qui figure
dans le textbox DateIni + valeur numérique qui figure dans le textbox Nbj
Ou comment remplacer mon "4" par Nbj ?

Me.DateCalc= Format(CDate(DateIni) + 4, "dddd dd mmm yyyy")

2°) problème inverse : comment connaître dans un textbox le nombres de
jours

ouvrés qui séparent 2 dates saisies dans 2 autres textbox , en tenant
compte

d'une liste de jours fériés "joursferies" ?

Pour info, j'utilise actuellement ce code pour connaître dans dateFab3 une
date = dateExped - 3 jours ouvrés
Me.dateFab3.Value = Format(workday(CDate(dateExped), -3,
Range("joursferies")), "dddd dd mmm yyyy")

Je tourne en rond...
Merci pour votre aide.
Domi