Comment puis-je faire de l'arithmétique temps / heures dans Google Spreadsheet?

140

Comment puis-je faire de l'arithmétique heure / heure dans une feuille de calcul Google?

J'ai une valeur qui est le temps (par exemple, 36:00:00) et je veux la diviser par une autre heure (par exemple, 3:00:00) et obtenir 12. Si je ne divise qu'une par l'autre, j'obtiens 288 : 00: 00 quand ce que je veux est 12 (ou 12:00:00).

Notez que l'utilisation de la fonction hours () ne fonctionne pas, car 36:00:00 devient 12.

user128807
la source
1
= A1 * 24 convertit "1:30:00" en "1.5"
psycho brm

Réponses:

136

Lorsque le nombre retourné par votre formule est en cours de formatage comme un temps, et que vous voulez formaté comme un numéro simple, changer le format de la cellule à un format numérique simple: cliquez sur la cellule puis cliquez sur Format, Number, Normal.

Les valeurs de temps dans la feuille de calcul Google sont représentées sous forme de jours et de parties de jours. Par exemple, 36:00:00 est la représentation formatée du nombre 1,5 (un jour et demi).

Supposons que vous divisez 36:00:00 par 3:00:00, comme dans votre exemple. Google Spreadsheet effectue le calcul 1,5 divisé par 0,125, soit 12. Le résultat vous indique que vous avez 12 intervalles de 3 heures sur une période de 36 heures. 12, bien sûr, n'est pas un intervalle de temps. C'est une quantité sans unité.

Dans l'autre sens, il est possible de formater n'importe quel nombre comme une heure. Si vous formatez 12 comme une heure, il est raisonnable de s'attendre à ce que vous obteniez 288: 00: 00. 12 jours contiennent 288 heures.

MetaEd
la source
6
Réponse géniale. Savez-vous s'il est possible de faire Format / Nombre / Normal dans une formule (par exemple, = Format.Number.Normal (A3))? Sans cela, je dois créer une colonne en double de la colonne des heures avec le formatage normal.
user128807
2
En fait, le format pour moi était "durée", donc les temps se résumaient en un seul total
Marcos Vasconcelos
68

Google Sheets propose désormais une option de mise en forme de la durée. Sélectionnez: Format -> Nombre -> Durée.

Casebash
la source
Casebash et @xanderoid. Génial! Maintenant, comment formater comme une durée sans secondes. Il y a de fortes chances que les gens l'utilisent à cause des feuilles de temps. Un ajout que je peux ajouter pour faire un show de durée en HH: mm? J'ai essayé la formule TEXT pour formater, mais cela ne fait pas les durées.
Christiaan Westerbeek
Vous devez créer un format de date personnalisé pour quelques secondes seulement.
mentat le
32

Exemple de calcul du temps:

work-start   work-stop   lunchbreak    effective time

  07:30:00    17:00:00          1.5                 8  [=((A2-A1)*24)-A3]

Si vous soustrayez une valeur temporelle d'une autre, le résultat obtenu représentera la fraction de 24 heures, donc si vous multipliez le résultat par 24, vous obtenez la valeur représentée en heures.

En d'autres termes: l'opération est multiple, mais le sens est de changer le format du nombre (de jours en heures).

Mikkelbreum
la source
3
Et comment résumer les lignes de temps effectives?
Tarion
@mikkelbreum Je pense que vous vouliez montrer cette formule: = ((B2-A2) * 24) -C2 mais même la formule modifiée ne fonctionne pas dans la version actuelle de GSheets lors de l'utilisation du format Durée. Pour obtenir des heures décimales, vous devez faire quelque chose comme ceci: abs (-time (8,30,0) -1) * 24 = 8.5
Steve Gon
22

Vous pouvez utiliser la fonction TIME (h, m, s) de la feuille de calcul google. Si vous souhaitez ajouter des heures les unes aux autres (ou d'autres opérations arithmétiques), vous pouvez spécifier une cellule ou un appel à TIME pour chaque entrée de la formule.

Par exemple:

  • B3 = 10h45
  • C3 = 20 (minutes)
  • D3 = 15 (minutes)
  • E3 = 8 (heures)
  • F3 = B3 + temps (E3, C3 + D3,0) vaut 19:20
2nisi
la source
8

J'ai eu un problème similaire et je viens de le résoudre pour l'instant

  1. formater chacune des cellules à l' heure
  2. formater la cellule totale (somme de tout le temps) en Durée
Seadon Francis Pinto
la source
7

J'ai utilisé la TO_PURE_NUMBER()fonction et cela a fonctionné.

ziggy
la source
2
C'est beaucoup plus facile que la conversion en heures d'heures: min: sec que je faisais auparavant
HerrBag
Cela semble être la meilleure voie à suivre. Surtout lors de la somme de plus d'un jour d'heures. Notez que le résultat est en jours décimaux , donc si vous recherchez des heures, vous devez multiplier par 24.
TheAtomicOption
2

si vous avez une durée en h: mm, la valeur réelle stockée dans cette cellule est le temps converti en nombre réel, divisé par 24 heures par jour.

ex: 6h45 ou 6 heures 45 minutes équivaut à 6,75 heures 6,75 heures / 24 = 0,28125 (en d'autres termes 6h45minutes équivaut à 28,125% d'une journée). Si vous utilisez une colonne pour convertir vos durées en nombres réels (par exemple, convertir 6:45 en 0,28125), vous pouvez effectuer une multiplication ou une division et obtenir la bonne réponse.

xanderoïde
la source
0

Dans le cas où vous souhaitez le formater dans une formule (par exemple, si vous concaténez des chaînes et des valeurs), l'option de format susmentionnée de Google n'est pas disponible, mais vous pouvez utiliser la formule TEXT:

=TEXT(B1-C1,"HH:MM:SS")

Par conséquent, pour l'exemple interrogé, avec concaténation:

="The number of " & TEXT(B1,"HH") & " hour slots in " & TEXT(C1,"HH") _
& " is " & TEXT(C1/B1,"HH")

À votre santé

ggonmar
la source
0

Dans une nouvelle feuille de calcul avec 36:00:00entrée en A1 et 3:00:00entrée en B1 puis:

=A1/B1

dire en C1 renvoie 12.

pnuts
la source
-9

Tapez les valeurs dans des cellules uniques, car la feuille de calcul Google ne peut pas du tout gérer les formats de durée, quelle que soit leur forme ou leur forme. Ou vous devez apprendre à faire des scripts et obtenir votre diplôme en tant que pilote d'hélicoptère. c'est aussi une option.

grrrrrr
la source