Opération sur des heures si elles sont dans un créneau définie dans labels
Résolu
pyrus2047
Messages postés
156
Statut
Membre
-
pyrus2047 Messages postés 156 Statut Membre -
pyrus2047 Messages postés 156 Statut Membre -
Bonsoir
je cherche a faire des opérations sur des heures uniquement si elles sont dans un créneau définie entre 21:00<= et >=05:00
dans des labels
exemple : labels a ="20:00" - labels b ="02:00" résulta labels c ="03:00"
si vous avez une solution merci
je cherche a faire des opérations sur des heures uniquement si elles sont dans un créneau définie entre 21:00<= et >=05:00
dans des labels
exemple : labels a ="20:00" - labels b ="02:00" résulta labels c ="03:00"
si vous avez une solution merci
A voir également:
- Opération sur des heures si elles sont dans un créneau définie dans labels
- Impossible de terminer l'opération car le fichier contient un virus - Forum Virus
- L'opération demandée nécessite une élévation ✓ - Forum LibreOffice / OpenOffice
- L'opération demandée necessite une elevation ✓ - Forum Windows
- Formation 600 heures en mois - Forum Bureautique
- Impossible d'installer le logiciel utorrent ✓ - Forum Virus
7 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 586
bonjour, peut-être pourrais-tu nous montrer ton code VBA, et, en passant, nous expliquer comment tu arrives à 3h, en prenant ton crénom en considération.
Re
Oui pardon il faut pendre en compte: résulta labels c ="05:00"
Cordialement
Oui pardon il faut pendre en compte: résulta labels c ="05:00"
Cordialement
Sub Test()
Dim H1 As Date
Dim H2 As Date
H1 = CDate(Labela.Caption)
H2 = CDate(Labelb.Caption)
If H1 > Format((CDate("21:00") + 1), "hh:mm") And H2 < Format((CDate("05:00") +1), "hh:mm")Then
Labelc.Caption = Format(H2 - H1 + 1, "hh:mm")
End If
End Sub
tu n'as pas expliqué comment tu arrivais au résultat de 5h.
pour t'aider à comprendre ce que fait le code que tu as écrit, je propose que tu testes ceci:
pour t'aider à comprendre comment résoudre cet exercice, je propose que tu travailles (papier et crayon) sur d'autres exemples, et que tu détailles comment tu arrives au résultat attendu.
pour t'aider à comprendre ce que fait le code que tu as écrit, je propose que tu testes ceci:
Sub Test()
Dim H1 As Date
Dim H2 As Date, S As String
H1 = CDate("20:00")
H2 = CDate("1/1/1 3:00")
If H1 > CDate("21:00") Then
If H2 < CDate("05:00") Then
S = Format(H2 - H1 + 1, "hh:mm")
Else
S = " H2 hors créneau"
End If
Else
S = " H1 hors créneau"
End If
Debug.Print S
End Sub
pour t'aider à comprendre comment résoudre cet exercice, je propose que tu travailles (papier et crayon) sur d'autres exemples, et que tu détailles comment tu arrives au résultat attendu.
5h00 est la somme de heures de 20h00 a 02h00 le jour suivant qui sont dans le créneau entre 20h00 et 02h00 le jour suivant
ton test démontre la discrimination dans le créneau
comment je peux récupérer dans le caption du Label c la somme des heures de la discrimination quel que soit les heures saisie
ton test démontre la discrimination dans le créneau
comment je peux récupérer dans le caption du Label c la somme des heures de la discrimination quel que soit les heures saisie
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
re
exemple :
_ Label a = 20:00
_ Label b = 02:00
créneau = 21:00 _ 05:00
dans Label c la somme des heures dans Label a et Label b uniquement si les heures sont
comprise dans le créneau
donc
Label b - Label a = Label c
- de 20:00 a 21:00 hors créneau donc non calculer
- de 21:00 a 00:00 = 03:00 et de 00:00 a 02:00 = 02:00
03:00 + 02:00 = 05:00
Label c = 05:00
j’espère être suffisamment explicite
Cordialement
exemple :
_ Label a = 20:00
_ Label b = 02:00
créneau = 21:00 _ 05:00
dans Label c la somme des heures dans Label a et Label b uniquement si les heures sont
comprise dans le créneau
donc
Label b - Label a = Label c
- de 20:00 a 21:00 hors créneau donc non calculer
- de 21:00 a 00:00 = 03:00 et de 00:00 a 02:00 = 02:00
03:00 + 02:00 = 05:00
Label c = 05:00
j’espère être suffisamment explicite
Cordialement