Calc pregunta ¿como puedo sacar el tiempo en horas entre dos fechas tal como lo entrega el notepad?

Hola, una consulta sobre Calc: yo uso el notepad el block de notas como .log para llevar un registro de hs. de uso de la pc registrando h. de inicio de sesión y hora de final de sesión con F5 y pensaba que Calc podría calcular el tiempo al pegar la serie de registros dentro de una tabla,
el notepad da el tiempo asi 17:43 21/08/2021 17:54 21/08/2021 pero Calc no registra de ese modo el tiempo por eso la resta da error como se ve en la captura que les paso,
Sin título
¿se podrá hacer?
Muchas Gracias y Saludos!!!

Hola @jazei-AR:

Debes notar que (a no ser que lo hayas definido manualmente) la alineación izquierda corresponde con texto, y las fechas son número.
Prueba pulsando Ctrl+F8, para ver la diferencia.
También puedes ver si una fecha es número observando en la barra de estado si da un valor de suma distinto a 0.

En LibreOffice Calc, para calcular diferencias de tiempo entre una registro de hora y minutos con otro registro de hora y minutos, puedes utilizar la fórmula siguiente:

    =(B2<A2)+B2-A2

Donde el registro de la hora y minuto final se escribe en B2 y la hora y minuto inicial en se escribe en A2.

Una fórmula un poco más sencilla para convertir en fecha-hora, utilizando expresiones regulares

=VALOR(EXP.REG(A1;"(.*) (.*)";"$2 $1"))

1 Like

@mariosv: Creo que es respuesta y no comentario (post admin actions (la llave) - Move to Answers). Reduce mi fórmula a la mitad.

Para convertir en número esa información que está como texto, y así calcular la diferencia, puedes utilizar la siguiente fórmula en C41:

=VALOR(T(IZQUIERDA(B41;5)) + FECHANUMERO(TEXTO(DERECHA(B41;10);"DD/MM/YYYY")))-VALOR(T(IZQUIERDA(A41;5)) + FECHANUMERO(TEXTO(DERECHA(A41;10);"DD/MM/YYYY")))

En inglés, sería:
=VALUE(T(LEFT(B41;5)) + DATEVALUE(TEXT(RIGHT(B41;10);"DD/MM/YYYY")))-VALUE(T(LEFT(A41;5)) + DATEVALUE(TEXT(RIGHT(A41;10);"DD/MM/YYYY")))

La fórmula tiene dos partes similares, una para la hora de salida (celda B41) y otra para la hora de entrada (celda A41). En cada una toma los primeros 5 caracteres y los convierte en valor, luego toma los últimos 10 caracteres y los convierte en fecha.

Va un
tiempo en horas.ods (8.2 KB)
.

Más ayuda de LibreOffice sobre IZQUIERDA, DERECHA, T, TEXTO, VALOR, FECHANUMERO.

En mi caso, si la fecha está en formato 2021-08-21 17:43, automáticamente la reconoce como fecha, y no necesito una fórmula para convertirla. Pueder ver más en Pautas de aceptación de fechas (menú Herramientas - Opciones… - Configuración de idioma - Idiomas).

Otra opción, también válida, es utilizar la función Texto a columnas, usando como elemento de separación el Espacio. Eso dejará la hora en una columna y la fecha en otra; y en una tercera columna se pueden sumar ambos valores.

Probado en LibreOffice 7.0.6.2 (x86); OS: Windows 6.1

¡Una extra! Vale la pena si trabajas con muchos registros en forma simultánea. Encuentro que Notepad tiene la opción Lectura de derecha a izquierda —debes buscarla en el menú contextual: pulsando la tecla ubicada entre Ctrl y Windows derecho o con el botón secundario del ratón.
De nada sirve copiar y pegar, pues al pegar vuelve como al principio, pero puedes imprimir a PDF, y de allí copiar y pegar (y si solo es un registro: pegar solo texto sin formato (Ctrl+Shift+Alt+V).

Mucha gracias @LeroyG ! sigo a mano nomas excede mi capacidad!
pero muuuchas gracias igualmente
Saludos a todos

Solamente pega la fórmula que compartí en C41.

bueno pensé reconsiderar mi decisión… al fin y al cabo todo vale un
esfuerzo, no? voy a intentarlo no puedo querer todo facil sino me
vuelvo un estupido
muchas gracias en unos dias te cuento como me fue!!!
muchas gracias

quedo perfecto!!! muchas gracias!!! y saque del archivo adjunto.ods
el formato de celda del resultado para que se muestre en horas a
diferencia en hs.
Muchas gracias

1 Like

sin abusar… si queres sinó queda asi perfecto!!!
¿hay alguna forma que el resultado sea en número simple, digamos 01:00 hora sea simplemente 1 ó 01:30 sea 1.5 ó 00:40 sea 0.7?


muchas Gracias!!!

En la column D41 agrega la fórmula =C41*24.
Ten en cuenta que los días son números enteros contados desde el 30 de diciembre de 1899 (ese es el día 0), y las horas son fracciones de día (día/24).
Entonces, en C46 puedes escribir =SUMA(C41:C44)*24.

Que Grande!!! @LeroyG para Presidente!!!
Muchas Gracias!!!
por preparar semejante formula compleja
por explicarla
por solucionar el problema
Muchas graciassss!!!

Una más: Si tienes la interfaz de usuario en Español, pulsa Ctrl+Shift+, para obtener la hora actual (sin fecha). Se simplifica la fórmula en C41 a =B41-A41.
Así ya no dependerías de Notepad; aunque convengamos que es más cómodo pulsar F5.

que interesante dato!!! lo guardare
muchas gracias!!! @LeroyG