OVH Cloud OVH Cloud

Calcul Duree

3 réponses
Avatar
ptkppr
bonjour,
j'ai une table avec les champs suivants : HeureDebut , HeureFin.
un formulaire alimente par cette meme table via une requete.
j'ai cree un 3eme champ de type independant dans le formulaire dans lequel
je voudrais qu'apparraisse la duree calculee entre les 2 champs HeureDebut et
HeureFin.
J'avais trouvé un script sur ce sujet dans la FAQ... impossible de remettre
la main dessus.
merci d'avance

3 réponses

Avatar
Eric
Bonjour,

Cette fonction qui renvoie la durée en hh:mm peut-elle te servir ?
(à copier dans un module global et utilisable dans une requête, un
formulaire,...)

En source du controle indépendant :
=fnTempsEcoule([HeureDebut];[HeureFin])

Mais ne serait-ce pas plus simple de l'utiliser via un champ calculé que
tu rajoutes dans la requête sur laquelle est basé le formulaire:
Durée:fnTempsEcoule([HeureDebut];[HeureFin])
(Le temps de réponse serait meilleur)

Function fnTempsEcoule(Debut, Fin) As Date
If IsNull(Debut) Or IsNull(Fin) Then
fnTempsEcoule = 0
Exit Function
End If
Dim bteHeure As Byte, bteMinute As Byte, intLaps As Integer
intLaps = DateDiff("n", [Debut], IIf([Fin] < [Debut], DateAdd("n",
1440, [Fin]), [Fin]))
bteHeure = intLaps 60
bteMinute = intLaps Mod 60
fnTempsEcoule = bteHeure & ":" & bteMinute
End Function

bonjour,
j'ai une table avec les champs suivants : HeureDebut , HeureFin.
un formulaire alimente par cette meme table via une requete.
j'ai cree un 3eme champ de type independant dans le formulaire dans lequel
je voudrais qu'apparraisse la duree calculee entre les 2 champs HeureDebut et
HeureFin.
J'avais trouvé un script sur ce sujet dans la FAQ... impossible de remettre
la main dessus.
merci d'avance


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
ptkppr
en fait je voudrais que le cacul et l'ffichage se fasse en instantané...
c'est à dire apres mise à jour du champ "heure fin"


Bonjour,

Cette fonction qui renvoie la durée en hh:mm peut-elle te servir ?
(à copier dans un module global et utilisable dans une requête, un
formulaire,...)

En source du controle indépendant :
=fnTempsEcoule([HeureDebut];[HeureFin])

Mais ne serait-ce pas plus simple de l'utiliser via un champ calculé que
tu rajoutes dans la requête sur laquelle est basé le formulaire:
Durée:fnTempsEcoule([HeureDebut];[HeureFin])
(Le temps de réponse serait meilleur)

Function fnTempsEcoule(Debut, Fin) As Date
If IsNull(Debut) Or IsNull(Fin) Then
fnTempsEcoule = 0
Exit Function
End If
Dim bteHeure As Byte, bteMinute As Byte, intLaps As Integer
intLaps = DateDiff("n", [Debut], IIf([Fin] < [Debut], DateAdd("n",
1440, [Fin]), [Fin]))
bteHeure = intLaps 60
bteMinute = intLaps Mod 60
fnTempsEcoule = bteHeure & ":" & bteMinute
End Function

bonjour,
j'ai une table avec les champs suivants : HeureDebut , HeureFin.
un formulaire alimente par cette meme table via une requete.
j'ai cree un 3eme champ de type independant dans le formulaire dans lequel
je voudrais qu'apparraisse la duree calculee entre les 2 champs HeureDebut et
HeureFin.
J'avais trouvé un script sur ce sujet dans la FAQ... impossible de remettre
la main dessus.
merci d'avance


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




Avatar
Eric
Bonjour,

Mets la sur l'évènement après mise a jour du controle [Heure Fin]
Me!ChampDuree=fnTempsEcoule(me![HeureDebut],me![HeureFin])

en fait je voudrais que le cacul et l'ffichage se fasse en instantané...
c'est à dire apres mise à jour du champ "heure fin"



Bonjour,

Cette fonction qui renvoie la durée en hh:mm peut-elle te servir ?
(à copier dans un module global et utilisable dans une requête, un
formulaire,...)

En source du controle indépendant :
=fnTempsEcoule([HeureDebut];[HeureFin])

Mais ne serait-ce pas plus simple de l'utiliser via un champ calculé que
tu rajoutes dans la requête sur laquelle est basé le formulaire:
Durée:fnTempsEcoule([HeureDebut];[HeureFin])
(Le temps de réponse serait meilleur)

Function fnTempsEcoule(Debut, Fin) As Date
If IsNull(Debut) Or IsNull(Fin) Then
fnTempsEcoule = 0
Exit Function
End If
Dim bteHeure As Byte, bteMinute As Byte, intLaps As Integer
intLaps = DateDiff("n", [Debut], IIf([Fin] < [Debut], DateAdd("n",
1440, [Fin]), [Fin]))
bteHeure = intLaps 60
bteMinute = intLaps Mod 60
fnTempsEcoule = bteHeure & ":" & bteMinute
End Function


bonjour,
j'ai une table avec les champs suivants : HeureDebut , HeureFin.
un formulaire alimente par cette meme table via une requete.
j'ai cree un 3eme champ de type independant dans le formulaire dans lequel
je voudrais qu'apparraisse la duree calculee entre les 2 champs HeureDebut et
HeureFin.
J'avais trouvé un script sur ce sujet dans la FAQ... impossible de remettre
la main dessus.
merci d'avance


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr