Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Contar registros únicos con una condición

3,598 views
Skip to first unread message

Gusgus

unread,
Mar 31, 2011, 6:19:53 AM3/31/11
to
Hola a todos y, ante todo, muchas gracias de antemano por vuestra
ayuda,

Llevo días buceando por internet en busca de respuesta para esto pero
no he sido capaz de encontrarla. Tengo una tabla con un listado de
pacientes (número de paciente), unas fechas de visita y una enfermedad
determinada.

Mi objetivo es seleccionar los pacientes que tengan esa determinada
enfermedad sin contar las veces repetidas que pueda haberla tenido. Un
mismo paciente puede haber venido en fechas distintas, con distintas
patologías o alguna de ellas repetidas:

Nº pte fecha patología

991 23-12-10 tos
542 10-01-11 dolor pecho
422 25-01-11 tos
992 08-03-11 disnea
422 11-03-11 dolor pecho
1091 22-03-11 tos
422 25-03-11 tos
1091 29-03-11 tos

El resultado para la condición "tos" debería ser 3: los pacientes 991,
422 y 1091 tienen tos; además el 422 y 1091 la tienen más de una vez
pero eso no me interesa.

Después de múltiples intentos, la fórmula que me parecía más
aproximada es:

=SUMAPRODUCTO(($C$4:$C$223="tos")*(SUMA(SI(FRECUENCIA($A$4:$A$223;$A
$4:$A$223)>0;1))))

La he puesto así y como matriz pero no me da el resultado que busco
sino que, por lo que he podido comprobar, lo que hace es multiplicarme
el total de pacientes con tos (5) por los registros únicos de la
primera columna (5), dándome 25 como resultado.

¿alguna sugerencia...?

Gracias de nuevo por vuestra atención

SRF

Juan Español

unread,
Mar 31, 2011, 7:54:31 AM3/31/11
to
Hola Gusgus:
Prueba con esta fórmula

=SUMAPRODUCTO(--(FRECUENCIA(A4:A223;A4:A223)>0);--(C4:C223="tos"&""))

Saludos.-

Gusgus

unread,
Mar 31, 2011, 8:11:22 AM3/31/11
to
Me da como resultado #¡VALOR!, no sé si he hecho algo mal...

Por cierto ¿qué función tienen los dos guiones que se incluyen delante
de las fórmulas?

Muchas gracias

Juan Español

unread,
Mar 31, 2011, 2:59:24 PM3/31/11
to
Me parece que me estoy haciendo mayor.
Te juro Gusgus que la fórmula anterior la probé antes de postearla, y claro
la mandé porque funcionaba.
Ahora al contestar tú la vuelvo a probar y ala #¡VALOR! al canto.
Evidentemente la que probé no es lo mismo que mandé.
En fin.
Siempre hay que tener una bala en la recámara.
Esta

=SUMAPRODUCTO(--(FRECUENCIA(A4:A223*(C4:C223="tos");A4:A223)>0))

"a h o r a" sí me funciona. Lo de ahora lo digo despacio y en voz baja, no
sea que de aquí a allí se enfade y no funcione. :-)))

Con respecto al uso de -- antes de una comparación es para convertir un
VERDADERO en 1 y un FALSO en 0
-- es lo mismo que multiplicar dos veces por (-1), se hace por comodidad
también valdría 1*, pero
es más cómodo y rápido pulsar dos veces - que tener que mover el dedo de 1
al *.


"Gusgus" <susa...@yahoo.es> escribió en el mensaje de noticias
news:c1cc480d-789d-4267...@dn9g2000vbb.googlegroups.com...

Gusgus

unread,
Apr 1, 2011, 2:48:36 AM4/1/11
to
Bueno, pues al principio me ha vuelto a dar #¡VALOR!, pero acabo de
ver el problema. Los números de la columna A los obtengo por medio de
otra fórmula (que, por cierto, afortunadamente, me facilitaste
tú:=SI(Y(E11="";F11="");"";--(CONCATENAR(E11;F11)))) de modo que ahí,
oculto, donde no se ve un número hay una fórmula . He probado a quitar
la fórmula a ver qué pasaba y, efectivamente, ha dado el resultado.

La pena es que no puedo prescindir de esa fórmula y reconozco que mis
conocimientos en esto no van más allá... y eso que con la tabla que
hemos montado, con sólo meter un dato se construye solito casi el
Monasterio del Escorial!!!

:-)) GusGus

Juan Español

unread,
Apr 1, 2011, 4:30:26 AM4/1/11
to
La pescadilla que se muerde la cola.

Cambia =SI(Y(E4="";F4="");"";--(CONCATENAR(E4;F4)))
por
=SI(Y(E4="";F4="");0;--(CONCATENAR(E4;F4)))

Te aparecerán ceros en la columna A, cuando en la misma fila, las columnas E
y F estén vacías.
Si te "estorban" a la vista los ceros: Herramientas > Opciones > pestaña
Ver >
Desmarca la opción "Valores cero".

Es difícil resolver un puzle cuando no tienes a la vista ni todas las
piezas, ni el objetivo final.
Saludos.-

"Gusgus" <susa...@yahoo.es> escribió en el mensaje de noticias

news:640e453b-2a9f-407f...@1g2000yqq.googlegroups.com...

Juan Español

unread,
Apr 1, 2011, 4:51:20 AM4/1/11
to
La pescadilla que se muerde la cola.

Cambia
=SI(Y(E4="";F4="");"";--(CONCATENAR(E4;F4)))
por
=SI(Y(E4="";F4="");0;--(CONCATENAR(E4;F4)))

Y la fórmula


=SUMAPRODUCTO(--(FRECUENCIA(A4:A223*(C4:C223="tos");A4:A223)>0))

por
=SUMAPRODUCTO(--(FRECUENCIA(A4:A223*(C4:C223="tos");A4:A223)>0))-1

Te aparecerán ceros en la columna A, cuando en la misma fila, las columnas E
y F estén vacías.

Si te "estorban" a la vista los ceros, tienes dos soluciones
1ª) Herramientas > Opciones > pestaña Ver > Desmarca la opción "Valores
cero".
2ª) En el rango que te interese "ocultar" los ceros
Formato condicional > Valor de la celda > igual a 0
y eliges color de la Fuente el mismo que tengas de fondo.

Es difícil resolver un puzle cuando no tienes a la vista ni todas las
piezas, ni el objetivo final.

Saludos.-

"Gusgus" <susa...@yahoo.es> escribió en el mensaje de noticias
news:640e453b-2a9f-407f...@1g2000yqq.googlegroups.com...

Gusgus

unread,
Apr 1, 2011, 5:45:37 AM4/1/11
to
Ahora sí que funciona!!

¿sabes lo que pasa? que empezamos a hacer una cosa, luego pensamos que
quizá esto se podría mejorar y resulta que sí, y luego piensas.. pues
a lo mejor también se podría mejorar esto otro, y pasito a pasito nos
armamos un taco porque todo está entrelazado y no encontramos el
origen del nudo.

Lo que ahora tengo claro es que excel es una maravilla y lo tenemos
infrautilizado.

Muchas gracias por tu ayuda, creo que con esto ya tenemos nuestra
tabla a capricho.

GusGus ;-)

0 new messages