Foros del Web » Soporte técnico » Ofimática »

contar.si y sumar.si

Estas en el tema de contar.si y sumar.si en el foro de Ofimática en Foros del Web. Hola a todos, un favorcillo: tengo que contar celdas pero con dos condiciones, no una, y con la función contar.si sólo puedo poner 1. no ...
  #1 (permalink)  
Antiguo 19/08/2008, 10:23
 
Fecha de Ingreso: septiembre-2007
Ubicación: Badajoz City
Mensajes: 126
Antigüedad: 16 años, 7 meses
Puntos: 0
contar.si y sumar.si

Hola a todos,

un favorcillo:

tengo que contar celdas pero con dos condiciones, no una, y con la función contar.si sólo puedo poner 1.

no sé si me explico, vamos a ver:

tengo 3 columnas, en una de ellas el tipo, en otra el estado y en otra la superficie.

necesito contar los que tengan un tipo y un estado y sumar la superficie de estas.

pongo un ejemplo

Cita:
-A-B-C-
T1 E1 100
T2 E2 110
T3 E2 200
T4 E2 250
T3 E2 300
T4 E1 150
T3 E1 300
Y quiero que me diga cuantas filas llevan T3 con E2 y que las sumen,
En este caso saldrían 2 filas que cumplen las dos condiciones y 500 de superficie.


Espero haberme explicado.

Muchas gracias por adelantado
  #2 (permalink)  
Antiguo 19/08/2008, 10:45
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: contar.si y sumar.si

Yo no sabría hacerlo con fórmulas, pero con una macro sí .
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 19/08/2008, 10:59
 
Fecha de Ingreso: septiembre-2007
Ubicación: Badajoz City
Mensajes: 126
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: contar.si y sumar.si

Pues te agradecería que me ayudaras con esa macro, porque yo podría intentar hacerla, pero igual tardaba mucho, y si a ti no te cuesta mucho...
  #4 (permalink)  
Antiguo 19/08/2008, 11:12
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
De acuerdo Respuesta: contar.si y sumar.si

Bueno, hice algo, tal vez te ayude:
Código PHP:
Function SUMAR_SI(vRange As RangeFirstCondition As StringSecondCondition As String)
Dim This As Range
Dim vReturn 
As Integer
For Each This In vRange.Cells
    
If This FirstCondition And Cells(This.RowThis.Column 1) = SecondCondition Then
        vReturn 
vReturn Val(Cells(This.RowThis.Column 2))
    
End If
Next This
SUMAR_SI 
vReturn
End 
Function 
Los parámetros son:
vRange: Rango de Celdas (solo la primera columna)
FirstCondition: Condición para la primera columna
SecondCondition: Condición para la columna al lado de la primera

Para el ejemplo que pusiste sería:
Código:
=SUMAR_SI(A1:A7;"T3";"E2")
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 19/08/2008, 15:03
Avatar de abrahamvj  
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 17 años, 9 meses
Puntos: 18
Respuesta: contar.si y sumar.si

yo tambien prefiero las macros, pero, si queremos evitar su uso, una buena opcion (entre otras), es usar SUMAPRODUCTO:

Para contar coincidencias:

SUMAPRODUCTO(--(B4:B18="Abraham"),--(C4:C18="Peras"))

Para sumar coincidencias:

=SUMAPRODUCTO((B4:B18="Abraham")*(C4:C18="Peras")* (D4:D18))

Abraham
  #6 (permalink)  
Antiguo 20/08/2008, 00:58
 
Fecha de Ingreso: septiembre-2007
Ubicación: Badajoz City
Mensajes: 126
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: contar.si y sumar.si

BUeno, pues muchas gracias a los dos. La macro es muy buena, yo hubiese necesitado 3 veces más lineas de código.

Y en cuanto a lo de la función sumaproducto: ¿da problemas cuando las matrices a buscar son columnas enteras (ej: A:A) de otra hoja dentro del mismo archivo excel?
  #7 (permalink)  
Antiguo 20/08/2008, 12:01
Avatar de abrahamvj  
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 17 años, 9 meses
Puntos: 18
Respuesta: contar.si y sumar.si

Pues, sobre uno de los ¿problemas? de usar SUMAPRODUCTO, es justamente que no puede trabaja con rangos "completos", como B:B, he incluso no pemite un B1:B65536. Prueba "acortando" el rango, ejemplo: B1:B65535

Abraham
  #8 (permalink)  
Antiguo 21/08/2008, 05:53
 
Fecha de Ingreso: septiembre-2007
Ubicación: Badajoz City
Mensajes: 126
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: contar.si y sumar.si

Me gusta a mi la función esta de SUMAPRODUCTO,es muy útil. Gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:07.