Autres Conversion d'heures

Pepitas

XLDnaute Nouveau
Bonjour,
Vous m'aviez super bien aidé le mois passé, et moi voici à nouveau avec un bug. Je vous annexe mon tableau qui sera bien plus parlant. J'aimerais calculer les heures d'une employée et cela fonctionne, à part les cases en rouge. Pourtant elle sont toutes en même format. Merci beaucoup d'avance.
 

Pièces jointes

  • AIG-heures LC.xlsx
    21.3 KB · Affichages: 8

vgendron

XLDnaute Barbatruc
non.. de 7h40 à 11h10, il n'y a que 3h30
3h30 en décimal, c'est 3,5==> on n'écrit pas 3h5: tu mélanges les choux et les carrottes

ce qui ne fonctionne pas dans ton tableau
1) il faut mettre les heures au fomat "HEURES"
2) ensuite il faut revoir tes formules pour traiter les cas ou il n'y a pas de pause le midi, ou qu'il n'y a qu'une demi-journée
 

C'est papy Mougeot !

XLDnaute Occasionnel
Voici votre fichier remanié. Ce qu'il faut bien comprendre c'est que les formats sont des données maquillées pour répondre à nos besoins. Ainsi dans la première ligne le résultat 7:45 en format Heure correspond à un nombre 0,32291667 qui multiplié par 24 (pour 24 heures) donne la valeur en décimale de 7,75
 

Pièces jointes

  • AIG-heures LC.xlsx
    20.5 KB · Affichages: 0
Dernière édition:

merinos-BernardEtang

XLDnaute Accro
Bonjour,

La notation des heures c'est une bonne question...

Tant que l'on ne tiens pas compte des heures comme des factions de journée, ON VA SE TROMPER.
6 heures c'est 1/4 de journée.

7 heures c'est 7/24 de journée

7h15 c'est 7/24 + 15/24/60 de journée


quand on voit 7:30 , on ne voit pas la partie date... C'est 24/12/2024 7:30 ou le 1/1/1990 7:30 ?

1733826387900.png
 

Pièces jointes

  • AIG-heures LC.xlsx
    33.3 KB · Affichages: 0

Dranreb

XLDnaute Barbatruc
Bonjour.
Peut être auriez vous intérêt à utiliser une macro pour convertir en jours les valeurs mal saisies :
VB:
Option Explicit
Sub HeureMinDec()
   Dim Rng As Range, T(), L&, C%, X#
   Set Rng = Selection
   T = Rng.Value
   For L = 1 To UBound(T, 1)
      For C = 1 To UBound(T, 2)
         If Not IsEmpty(T(L, C)) Then
            X = T(L, C)
            T(L, C) = (Int(X) + (X - Int(X)) * 1.66666666666667) / 24
            End If: Next C, L
   Rng.Value = T
   Rng.NumberFormat = "[h]:mm"
   End Sub
 

Discussions similaires

Statistiques des forums

Discussions
315 085
Messages
2 116 074
Membres
112 650
dernier inscrit
badi44