Access Addition d'heures

Résolu/Fermé
Salut

Sous Access je veux additionner des heures. le total apparait dans un champs indépendant mais quand la somme est supérieure à 24 h, le champs affiche 0h et les minutes, or je souhaite afficher les heures entieres
Exemple : 18h00 + 18h00 = 36 h 00 et non 12 h 00 comme cela se produit

11 réponses

  1. J'ai le même problème! Je veux additionner 7:30 + 7:30 + 7:30 !!! Sur Access! Comment faire?
    2
    1. Utilises le format heure abrégée dans les paramètre du champ date/heure
      2
      1. Il faut convertir la résultante de la somme (nombre réel) au format datetime. Ensuite, on choisit le format dans lequel on veut afficher hh:mm:ss ou hh:mm.

        SELECT x, Format(CDate(Sum([Heures])),"hh:mm")
        FROM table
        GROUP BY x

        où x = champ sur lequel on veut grouper
        1
        1. Contributeur
          bonjour

          c'est le format de ton champ qu'il faut modifier :
          il faut mettre [h]:mm pour dépasser les 24 h
          sinon avec hh:mm
          tu n'a que les heures comprise dans les 24 heures.

          0
          1. bonjour,
            cela ne marche pas pour moi. Peut-être que j'ai mal compris

            JR
            0
          2. Contributeur
            @JRbonjour

            dans le format de ton champ tu choisis personnalisé et il faut mettre [h]:mm pour dépasser les 24 h

            ou [hh]:mm:ss si tu veux selon le résultat recherché.
            0
        2. Contributeur
          bonjour
          ça marche pa :s c'est-à-dire ?

          Qu'est-ce qui ne fonctionne pas ? Le format [h]:mm pour dépasser 24 heures ?

          0
          1. En fait le format [h]:mm c pour excel et pas access.

            Pour access il fo créer un module vb pour faire la somme des heures
            0
        3. Bonjour,

          J'a le même problème concernant les formats des heures. 20h + 20h =40 H. Comment fait on pour avoir les 40h ?
          le format H entre crochet ne marche pas pour Access, mas pour Excel. Avez vous une autre solution ?

          Merci
          :o)
          0
          1. moi je veut additionner un chammp 1 et un champ 2 et stocker le résultat en champ 2 comment on fait
            0
            1. Bonjour à tous

              J'ai la réponse !!! mais avec VBA

              Voici le code

              'Permet de trouver un nombre d'heures > 24 :
              Public Function EnHeure(ParTemps As Double, Optional ParSecondesAffichees As Boolean = False)
              Dim VarJours As Long, VarHeures As Long, VarMinutes As Long, VarSecondes As Long
              VarJours = Int(ParTemps)
              ParTemps = (ParTemps - VarJours) * 86400 'nombre de secondes
              VarSecondes = ParTemps Mod 60
              ParTemps = ParTemps - VarSecondes
              VarMinutes = (ParTemps Mod 3600) / 60 ' Minutes
              ParTemps = ParTemps - VarMinutes * 60
              VarHeures = (ParTemps Mod 86400) / 3600 ' Heures
              VarHeures = VarHeures + VarJours * 24
              If IsMissing(ParSecondesAffichees) Or ParSecondesAffichees = True Then
              EnHeure = VarHeures & ":" & Format(VarMinutes, "00") & ":" & Format(VarSecondes, "00")
              Else
              EnHeure = VarHeures & ":" & Format(VarMinutes, "00")
              End If
              End Function
              0