Calcul de dates sur access

Résolu
marissa -  
 marissa -
Bonjour,

je veux calculer la différence entre deux dates et représenter le résultats sous forme d'une durée en heure, est ce que c'est faisable par access!! et si elle l'est ça se fait comment. merci
Exemple: 05/05/2011 09:00:00 - 04/05/2011 10:30:00 = 22:30:00

2 réponses

  1. marissa
     
    il s'agit d'une requête
    1
    1. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      Bonjour
      Trouver cette solution dans une FAQ Access

      Pour effectuer un calcul avec DateDiff(), vous devrez extraire d'abord la différence en jours, puis en heures, puis en minutes? puis les ajouter les unes aux autres !

      Si vous avez enregistré DebutTempsPasse et FinTempsPasse de chaque activité dans une table des Temps Passés, vous pouvez, dans une requête, calculer directement un total des heures par projet.

      Par exemple, utiliser cette requête dans un état pour afficher un résumé des heures par projet :
      Select TP.CLEPROJET, Sum([FIN_TEMPS_PASSE]-[DEBUT_TEMPS_PASSE])*24 As HeuresTotales
      From TEMPSPASSE TP
      Group By TP.CLEPROJET;
      0
    2. marissa
       
      Bonsoir
      j'ai essayé votre réponse (datediff()) ça à marcher super bien sauf que je bloque sur l'ajout des heures,minutes et des secondes les uns aux autres!!! pouvez vous m'aidez encore plus?!
      Merci
      0
    3. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      Bonjour
      Je t'ai trouvé 2 fonctions

      Voici 2 fonctions qui renvoient une chaîne de caractères, elles ne doivent donc être utilisées que pour l'affichage.
      Celle-ci renvoie la durée sous la forme Jour J Heure:minutes:secondes

      Function JourHeure(dtm As Date) As String
      JourHeure = ""
      If CDbl(dtm) > 1 Then
      ' On calcule le nombre de jours
      JourHeure = CInt(dtm - 0.5) & " J "
      End If
      ' On ajoute les heures, minutes et secondes
      JourHeure = JourHeure & Format(dtm,"hh:nn:ss")
      End Function


      Tandis que celle-la renvoie la durée sous la forme Heure:minutes:secondes

      Function HeureSup24(dtm As Date) As String
      'calcule le nombre d'heures
      HeureSup24 = DateDiff("h", 0, dtm)
      'on ajoute les minutes et les secondes
      HeureSup24 = HeureSup24 & Format(dtm, ":nn:ss")
      End Function
      0
    4. castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
       
      Une aide précieuse sur access sur site devellopez et faq
      0
    5. marissa
       
      je vois que la 2eme fonction correspond au résutat que je souhaite avoir mais je ne sais pas ou mettre la fonction exactement sur le code SQL.
      Merci
      0
  2. david_wklw Messages postés 43 Statut Membre 4
     
    Dans un formulaire, il suffit de soustraire les deux champs et de mettre le format en heures dans le champ résultat.

    C'est pour un formulaire ? Une requête ?
    0