Multiplicar precio por horas en OpenOffice Calc
Supongamos que hemos dejado aparcado en coche en un parking público una hora y quince minutos, y el precio es X,YY€ la hora.
¿Cómo calcular el importe a pagar?
O hemos trabajado ocho horas y treinta minutos extras la pasada semana, y queremos saber cuanto nos tienen que pagar a X,YY€ la hora.
Con OpenOffice Calc es muy fácil
A uno se le puede ocurrir: resto a la hora de salida la hora de entrada, y eso nos dá el tiempo. Si lo multiplico por el precio por hora, ya está. Pero no.
No es así, ya que en ese caso multiplicamos unidades de tiempo (basadas en 24 horas 60 minutos 60 segundos) por unidades basadas en el sistema decimal. No están en la misma base.
Pero la solución es muy simple y fácil de recordar. Primero lo explicamos.
Calc, al igual que otras hojas de cálculo, almacenan internamente las fechas y horas como un número decimal, en el que la parte entera representa la fecha, y la parte decimal, la hora.
Si en una celda escribimos una fecha, se guarda esa fecha a la hora cero. Por ejemplo, el 20 de diciembre de 2012 en realidad es el 20/12/2012 0:00:00, y su valor decimal es el 41.263,00
Si escribimos una hora, se almacena esa hora del día 30/12/1899, que es la fecha base que utiliza Calc. En otras hojas de cálculo la fecha base es distinta, como por ejemplo para Excel, que es el día 0/1/1900 (sí, el día cero). Así, en Calc, las 12:40 son en realidad el 30/12/1899 12:40:00, y en Excel sería el 0/1/1900 12:40:00. En ambos, su valor decimal es 0,527777777777778.
La fecha-hora 20/12/2012 12:40:00 se corresponde con el valor decimal el 41.263,527777777777778
En las hojas de cálculo, 1 día equivale por lo tanto al número 1,00 decimal. Si restamos dos fechas-horas que distan entre sí un día, se almacena el valor 1,00 decimal. Si restamos dos fechas-horas que distan entre sí un día y 12 horas (un día y medio) se almacena el valor 1,5 decimal.
Dado que un día son 24 horas, si la diferencia entre dos celdas fecha-hora la multiplicamos por 24, obtenemos el valor del tiempo transcurrido en formato de horas decimales.
Ahora ya podremos multiplicar por el precio, que viene expresado en unidades decimales también.
Por lo tanto, para calcular el importe a pagar en el parking, debemos restar la hora de salida de la hora de entrada, multiplicar por 24, y multiplicar por el precio por hora.
Basado en un truco de mriosv del Foro Oficial en Español de OpenOffice