Bonjour à tous,
Je viens vers vous car j'ai une question sur un comptage automatique de jour de sortie. Je m'explique:
J'ai une userform avec 4 textbox
- 1 textbox nommé textbox_JD correspondant au jour d'entrée au format dd/mm
- 1 textbox nommé textbox_HD correpsondant à l'heure d'entrée au format hh:mm
- 1 textbox nommé textbox_JF correspondant au jour de sortie au format dd/mm
- 1 textbox nommé textbox_HF correpsondant à l'heure de sortie au format hh:mm
- 1 label nommé label_JF correspondant au jour de sortie au format dddd afin qu'il affiche lundi mardi mercredi etc....
j'ai dans le classeur la feuille Test et la cellule A1 dans laquelle le il y a une nombre qui est un temps en h au format standard. (ex: A1 = 93)
Je voudrais que lorsque je double clique sur le textbox JD ou HD, le calcul de sortie se fasse automatiquement à partir de la cellule A1 (exemple si on est le 01/01/15 à 08:00 et que nous avons 93 dans la cellule A1, je voudrai que le textbox JF donne 05/01 et HF donne 05:00 et que le label_JF donne lundi par exemple pour 2015 car le 05/01/2015 est un lundi
Biensur il faudra que le système prenne en compte les années par rapport au nombre de journ dans le mois pour février par exemple qui change souvent.
Est-ce possible de faire ceci? merci de votre aide par avance:
J'ai débuté un code mais je suis pas sur de bien partir..
le problème est qu'il me calcul mal la sortie j'ai mi 93 en A1 et si je le fait aujourd'hui il me met bien 03/04 et 14:15 mais la sortie il me sort 05/07 14:15 ce qui n'est pas normal vu que je demande qu'il fasse 03/04 14:15 + 4 jours - 3 heures (93 heures)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Private Sub TextBox_JD_DblClick(ByVal Cancel As MSForms.ReturnBoolean) JD = Date HD = Time TextBox_JD.Value = Left(JD, 5) TextBox_HD.Value = FormatDateTime(HD, vbShortTime) Jourj = "" date_debut = JD + HD date_fin = date_debut + Worksheets("Test").Cells(1, 1).Value If TextBox_JF.Value = "" Then JF = DateValue(date_fin) Jourj = Format(JF, "dddd") HF = TimeValue(date_fin) End If TextBox_JF = Left(DateValue(JF), 5) TextBox_HF = FormatDateTime(HF, vbShortTime) Label_JF.Caption = Jourj End Sub
Merci de votre aide
Partager