[SQL][Access]Somme d'heures

Salut les geeks, j’ai un petit souci lorsque je souhaite faire une somme de champs de types heure/date. J’explique:

Je souhaite calculer les heures de vol de pilotes. J’ai donc une table “Vol” avec un champ “DureeVol” de type heure:munites.
Si je fais un bête SUM(DureeVol) j’obtiens un résultat sous forme décimale, au lieu de la forme heures:minutes. Quel serait le meilleur moyen d’obtenir un champ de type heure:minutes avec la requête? J’ai découvert qu’on pouvait décomposer la somme en faisant SUM(HOUR(DureeVol)),SUM(MINUTE(DureeVol)) mais ça donne deux champs différents pour les heures et pour les minutes. Bien évidemment j’aimerais réunir les heures et minutes dans le même champ. Est-ce possible?

Merci pour votre aide.

bas de page http://www.tek-tips.com/faqs.cfm?fid=4230

[quote]Summing times

If you sum entries in a date/time field that represent times you get a numeric result, e.g. if you have

2:34
3:45
2:50

the sum comes to 0.38125. To get a H:M:S result you might use Format([mytimes],“hh:nn:ss”) (“nn” for minutes not “mm” which is month) but this gives the hours modulo 24. This adds a position for the number of days if your sum is going to exceed 24 hours:

dhhmmss: Str(Int(Sum([mytimes]))) & " " & Format(Sum([mytimes]),“hh:nn:ss”)[/quote]

sinon http://access.developpez.com/faq/?page=dat…ndeHeureTransfo
(et d’une maniere plus générale http://access.developpez.com/faq/ )

[quote]Vous avez un champ ou simplement une valeur contenant un nombre de secondes, et vous souhaitez changer son format.

Exemple pour 32295 secondes :

Solution 1 : Il faut diviser 32295 par 3600 et garder la partie entière : 8. Nous avons le nombre d’heure. Ensuite il faut calculer le reste de : 32295 - 36008 = 3495 Il reste donc 3495 secondes. Pour avoir les minutes, c’est comme pour les heures, sauf que l’on divise par 60: 3495/60 => 58 Puis : 3495 - 5860 => 15 Donc le résultat est 8:58:15

Solution 2 : TimeSerial(0,0,32295) -> 08:58:15 ATTENTION ! Le nombre de secondes doit être inférieur à 32768.[/quote]

en esperant que c’etait bien les infos que tu recherchais.

Le coup du Format(SUm(etc…)) fonctionne, merci! Mais il reste un petit souci car il demande de rentrer un nombre d’heures et de minutes avant d’afficher le résultat de la requête, je vais tenter de voir d’où ça vient.

C’est typique d’une colonne qu’il ne trouve pas. Il considère alors que c’est une variable. Et si elle n’est pas affectée, via les paramètres du formulaire ou en VBA, alors il te la demande.

Sers toi de l’assistant en faisant CTRL-F2 dans la requête Access, pour être sûr d’aller chercher les bonnes informations.