Calcul du temps écoulé entre deux heures

Signaler
Messages postés
1
Date d'inscription
samedi 14 août 2010
Statut
Membre
Dernière intervention
14 août 2010
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Salut;
je souhaite avoir le code pour calculer le temps écoulé entre deux heures de jours différents ex :

Le train rentre à 23:00 et fais son départ à 1:00 du jour qui suit le temps du séjour est du 2 heures.
comment faire pour calculer ces deux heures.
Cordialement.

4 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
regarde du coté de la fonction DateDiff.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
Messages postés
3
Date d'inscription
vendredi 26 septembre 2003
Statut
Membre
Dernière intervention
16 janvier 2011

oui en effet la fonction datediff est faite pour cela :
exemple,
VBA.DateDiff("d", Date1, Date2, vbMonday, vbFirstJan1)

l'argument interval : c'est l'unité de comparaison

"yyyy" Année
"q" Trimestre
"m" Mois
"y" Jour de l'année
"d" Jour
"w" Jour de la semaine
"ww" Semaine
"h" Heure
"n" Minute
"s" Seconde

Parcontre, j'aimerais bien connaitre le temps ecoulé en "heure:minutes" entre 2 dates en comptant que pendant les heures de travail :

exemple, on compte le temps ecoulé tous les jours entre 8h jusqu'a 18h du Lundi au vendredi uniquement.

exemple concret : Date1 le vendredi 14/01/2011 15h et Date2 le lundi 17/01/2011 à 10h
en prenant en compte mon hypothese de depart, le temps ecoulé serait du vendredi 15h jusqu'a 18h + le lundi de 8h jusqu'a 10h.
Ce qui fait 3h+2h= 5h de temps écoulé (temps de travail).

Je n'ai pas trouvé la fonction ou l'algorithme qui permet d'effectuer le calcul

Si quelqu'un a une solution je suis preneur.


dlpinformatique
bonjour tout le monde

J'ai trouvé une solution efficace à ce problème, mais j'ai rencontré un problème. Le programme affiche 9 fois le message que je veux qu'il affiche quand la condition est vraie.

Je ne sais pas si quelqu'un peut m'aider pour corriger cette erreur. Je veux qu''il affiche seulement une seule fenêtre au lieu de 9 fenêtres quand il trouve que la différence entre les deux heures correspond bien à ce qui est décrit dans la condition.

voici mon code. Je l'ai fait avec VB 2010

Public Class Foires
Private Sub foires_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Start()
programme.Text = (TimeOfDay)

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Label1.Text = Format(TimeOfDay)
If Label1.Text = "12:00:00" Then My.Computer.Audio.Play(My.Resources.note, AudioPlayMode.Background)

End Sub

Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim hd As Integer
Dim md As Integer
Dim ha As Integer
Dim ma As Integer
Dim sa As Integer
Dim sd As Integer
Dim prestation As Integer
Dim h As Integer
Dim total As Integer
Dim h1 As Integer
Dim total1 As Integer
md = Minute(Label1.Text)
sd = Second(Label1.Text)
hd = Hour(Label1.Text)
ma = Minute(programme.Text)
sa = Second(programme.Text)
ha = Hour(programme.Text)
h = ((hd * 60) + md) * 60
total = h + sd
h1 = ((ha * 60) + ma) * 60
total1 = h1 + sa
prestation = (total - total1)

If (prestation = 28800) Then My.Computer.Audio.Play(My.Resources.note, AudioPlayMode.Background)

End Sub

Private Sub QuitterToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles QuitterToolStripMenuItem.Click
End
End Sub

Private Sub Button2_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Timer2.Enabled = False
programme.Enabled = False
MsgBox("La notification est désactivée.")
End Sub
End Class
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
239
Bonjour, will1ma
P0eux-tu nous dire ce que vient faire ici ton intervention ?
D'autant que le code montré, qui est du VB.Net, n'a rien à voir avec :
Forum > Visual Basic 6 > Langages dérivés > VBA


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ