¿Fórmula para Suma condicional de horas?

Tengo esta fórmula para una columna la DE con valores ejemplo 10,10-9,03 etc... Que las pasa a horas ejemplo 20:10

{=(SUMA(ENTERO(D2:D32))+SUMA((D2:D32)-ENTERO(D2:D32))*100/60)/24}

Pero necesito una que sea con una condición que esta en la columna B o sea la suma de columna DE con la condición que esta en columna b, la condición seria 1,2,3 etc...

1 Respuesta

Respuesta
1

[Hola

Creo que sería máa fácil entenderte si colocas un archivo, de al menos parte de tus datos, en algún "Drive" y compartes el enlace por aquí. No olvides tratar de ejemplificar mejor lo que necesitas ahora.

Saludos]

Abraham Valencia

 subo libro.


Columna D2:D32 valores que son horas, ejemplo 10,51 son 10 horas 51 minutos.
Formula en D34 pasa a horas los datos de la columna ok., celda con formato hora minutos.
Ahora en D34 con la formula tipica con criterio (el 1 es Lunes) fromato celda en horas minutos,sobra decir que el resultado no es correcto ya que la formula no es la indicada.
Pues eso en D34 formula que sume con criterio 1 la horas de D2:D32.
Sobra explicar que los criterios 1,2,3 ect.. corresponde a los dias de la semana

https://www.dropbox.com/sh/8n0ds644y4zg5m1/AAAU8abRwfVqiWmZb8ARPfwna?dl=0


Salud2....

[Hola

Lo más práctico es usar una columna auxiliar, mira la fórmula que apliqué y en las sumas mira el formato personalizado de las celdas:

https://drive.google.com/file/d/1UmRgAh9BSQtX-RimmINWIHqXWyFeAW3q/view?usp=sharing 

Comentas

Abraham Valencia

Esto es una idea más de las que intento evitar columnas auxiliares por eso pregunto en el foro.

No puedo poner ninguna columna auxiliar esto que subo es para la explicación, las demás columnas están ocupadas.

Esta idea tal cual no vale, fila 15 dato 14,50 aplicando formula 14,05 tiene que ser 14:50

Fila 30 dato 16,00 formula no pilla nada y seria 16:00

Si esto tiene que ser con columnas auxiliares entonces necesitaría una macro.

Salud2….

[Hola nuevamente

- En realidad no comentaste que no podías/querías usar columnas auxiliares

- Tienes razón sobre las filas 15 y 30, no me percaté al borrar los errores y al comprobar las sumas

- No olvides que aquí todos colaboramos "ad honorem" por lo que damos nuestros (pocos) tiempos libres

- Me llamó la atención tu caso y siendo domingo me di tiempo para hacer algo con macros, mira el enlace:

https://drive.google.com/file/d/15Mbk0ZNN_2n_QajHRHvwUoAwIt-ODnIS/view?usp=sharing 

Corre la macro "Fuel" y comentas... ah, ojo, como obvio trabajas sobre otro archivo trata de entender como trabaja para adaptarlo a tus necesidades.

Saludos]

Abraham Valencia

En libros excel de prueba todo Ok, pero cuando lo paso a una hoja de uno de los libros reales no va da error al ejecutar la macro.

https://www.dropbox.com/s/7otl9wia955auz1/HORAS%20MACRO%20FORO%20NO%20VA.xlsm?dl=0 

Saludos...

[Hola

Es relativamente simple, en "D29" tienes 10.60, al convertirlo queda como "10:60" y para Excel y VBA (y en general) no existe esa hora/tiempo. Asumo que quisiste decir 11.00 (11:00). Cámbialo y ya.

Abraham Valencia

PD: Por si acaso, no sé si vale la pena hacer muchos cambios para que detecte esos "problemas", a menos que te animes a intentarlo.

puf....... pues seguro que deso tine que haber unos cuantos, pero busca ahora entre tantas hojas,celdas  y libros

Un Saludo.

Si son mucho quizá usando un "On Error Resume Next" al inicio de la macro "Sumar" te sirva

Abraham Valencia

PD: Aunque yo solo recomiendo usarlo cuando es estrictamente necesario

con On Error Resume Next lo que hace es que omite sumar 10,60 o pones 11,00 o no lo suma

Saludos.

Por eso escribí "quizá...", no afirmé que sería lo que buscas. En casos como el tuyo lo lógico es buscar todas las celdas del problema y cambiarlas, por muchas que sean. Y no, no es necesario hacer una macro (menos si no se sabe bien VBA) basta usar la herramienta "Buscar" del Excel y detectar todas aquellas que contengan un ".60" (u otros problemas) y cambiarlas.

Abraham Valencia

Al final encontré la fórmula ideal adaptada a la primera que inicie el post.

{=SUMA(SI($B$2:$B$32=A41;(ENTERO($D$2:$D$32)+(($D$2:$D$32)-ENTERO($D$2:$D$32))*100/60)/24;0))}

De todas formas muchas gracias por tu desinteresada ayuda y tiempo dedicado.

Un Saludo.

[Hola

Muy bien, yo ya había usado una matricial muy parecida y también otra opción con "Sumaproducto" pero en ambos casos agregué una fila auxiliar con los números del 1 al 7 y pensé que, al igual que las columnas, tampoco querías filas auxiliares como veo has colocado en la fila 41.

Saludos]

Abraham Valencia

A41 esta cambiado en la formula por 1,2,3 ect.... por lo tanto no necesito columnas auxilares.

Un Saludo.

Claro, es tu trabajo, me parece muy bien que veas alternativas. Como te dije, al no ser algo mío, apenas vi una opción rapida te la pasé y al ver otras con fórmulas, tampoco me "entretuve" mucho con eso. Lo de la macro sí le di más tiempo ya que era fin de semana y además, la verdad fue interesante pasar números del tipo Double a tiempos del tipo Date, realmente entretenido :)

Suerte

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas