Sumar SI se cumplen condiciones

Tengo una archivo que debe sumar ciertas celdas si cumple con algunos criterios asi:

- En C4 ("General Servicios" "LE") = Suma Todas las columnas: "LE" (para el ejemplo: I4, O4, U4, AA4...) si la celda "C" de "Tipo", tiene valor. Si el valor esta en la celda "T" de "Tipo", ese valor no se debe tener en cuenta.

Para el Ejemplo, deberá sumar lo que esta en I4, O4, AA4..., pero no lo que esta en U4.

La idea es sumar los valores correspondientes a cada "Estado", siempre y cuando el "Tipo" sea "C".

Puedo enviar el archivo en Excel si se requiere.

No se si sea muy enredado el tema... :S

1 Respuesta

Respuesta
1

Tendrías que hacer una fórmula por cada nombre, es decir, una fórmula para Alberto, una para Andres, otra para Bigitte, y así para cada nombre, esta sería la fórmula para Alberto:

=SI(G4<>"",SUMAR.SI(I3:L3,C3,I4:L4))

Para sumar el resultado de Alberto y Andres:

=SI(G4<>"",SUMAR.SI(I3:L3,C3,I4:L4))+SI(M4<>"",SUMAR.SI(O3:R3,C3,O4:R4))

Para sumar el resultado de Alberto, Andres y Brigitte:

=SI(G4<>"",SUMAR.SI(I3:L3,C3,I4:L4))+SI(M4<>"",SUMAR.SI(O3:R3,C3,O4:R4))+SI(S4<>"",SUMAR.SI(U3:X3,C3,U4:X4))

Y así, para cada nombre.

Por la forma en que tienes acomodados los datos, lo más conveniente sería realizar una macro.

Si quieres te preparo la macro para que al presionar un botón, se actualicen los totales.


Otra opción, es que acomodes tus datos en forma de lista:

Tendrías que poner los nombres en una lista para el día 1 de julio, otra vez los mismos nombres para el 2 de julio.

De esa forma el total de "LE", se podría obtener con esta fórmula:

=SUMAR.SI.CONJUNTO(J5:J10,F5:F10,C5,H5:H10,1)

Incluso, al tener la información de esta manera, podrías ponerla en una tabla dinámica y obtener otros totales, por nombre, por fecha, etc.

Nota: Para probar las fórmulas cambia la coma "," por punto y coma ";"

Revisa las opciones y me comentas.

Dante, mil gracias...  Como siempre muy valiosa tu ayuda.

Pregunta, con la macro no importa la cantidad de personas que se adicionen o tendría limite?

Gracias

No importa el número de personas, la macro estaría diseñada para revisar todas las columnas, el límite sería la última columna que tiene excel.

Hice el ejercicio uno a uno, pero al desplazar hacia abajo, para que ejecute en las demás filas, ya no funciona adecuadamente.

Puedo abusar de ti y me ayudas con la macro..  :D

Gracias

Con todo gusto.

Envíame tu archivo para crear la macro.

Pon algunos ejemplos de colore verde para saber cuál es el resultado.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “triyis” y el título de esta pregunta.

Muy buenos días,

Envié el correo de acuerdo a tus instrucciones.

Atenta a tus comentarios.

Saludos.

Esta es la macro

Sub GeneralServicios()
'Por.Dante Amor
    Application.ScreenUpdating = False
    uc = Cells(1, Columns.Count).End(xlToLeft).Column
    uf = Range("A" & Rows.Count).End(xlUp).Row
    If uf < 4 Then uf = 4
    Range("C4:F" & uf).ClearContents
    For i = 4 To uf
        For j = Columns("G").Column To uc Step 6
            If Cells(i, j) <> "" Then
                Cells(i, "C") = Cells(i, "C") + Cells(i, j + 2)
                Cells(i, "E") = Cells(i, "E") + Cells(i, j + 4)
            End If
            If Cells(i, j + 1) <> "" Then
                Cells(i, "D") = Cells(i, "D") + Cells(i, j + 3)
                Cells(i, "F") = Cells(i, "F") + Cells(i, j + 5)
            End If
        Next
    Next
    Application.ScreenUpdating = True
    MsgBox "Sumatorias actualizadas", vbInformation, "GENERAL SERVICIOS"
End Sub

¡Gracias!

Definitivamente eres un genio!

Mi más grande admiración y respeto.

Con gusto.

Recuerda cambiar la valoración de la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas