Funcion O en matricial

29/05/2008 - 16:22 por twomind | Informe spam
Hola buenas, tengo un problema un poco complicadillo, a ver si em explico bien:

Creo que la "función O" dentro de una "función SI", y en forma matricial, no
funciona. No sé si es porque hago algo mal, o porque excel tiene esa
limitación. Me explico, tengo la siguiente tabla:

A...BC...D
1 Pais..Color..Cod Envio...Días tarda
2 España.negro.1...12
3 España.blanco2...14
4 Francia.verde..3...13
5 Italia.blanco4...10
6 Italia.negro.5...12
7 España..negro620
8 Francia..negro.714
9 España.verde..8...15

Quiero la media, moda y percentiles de los "días tarda" con diferentes
combinaciones, pero voy a poner los ejemplos sólo con la media, que es lo más
fácil de ver. Las demás medidas estadísticas son todas iguales sólo cambiando
el principio de la fórmula así que solucionada una, solucionadas todas.

- Media de días para envios sólo de España

{=MEDIA(SI(A2:A9="ESPAÑA";D2:D9))} Resultado.25--> bien (Me hace la media
de los días que tardan sólo los de españa, o sea (12+14+20+15)/4)

- Media de días para envios de España de color Negro

{=MEDIA(SI(A2:A9="ESPAÑA";SI(B2:B9="NEGRO";D2:D9)))} Resultado-->bien
(Sólo coge los 2 que son de España y de color Negro (20+12)/2)

- Media de días para envios de España y que sean de color Negro o Blanco

{=MEDIA(SI(A2:A9="ESPAÑA";SI(O(B2:B9="NEGRO";B2:B9="BLANCO");D2:D9)))}
Resultado.25-->Mal (Me hace la media sólo de los de España, sin tener en
cuenta la segunda condición. Debería cogerme (12+14+20)/3), que son los que
son de España y además, Negros o Blancos)


Ante esto, he probado la fórmula que calcularía sólo la media de los que son
Blancos o Negros:

{=MEDIA(SI(O(B2:B9=”NEGRO”;B2:B9=”BLANCO”);D2:D9))} Resultado.25-->Mal
(Me está haciendo la media de días de toda la tabla, incluyendo los 2 envíos
verdes, que no son ni Negro ni Blanco, como le estoy diciendo en la fórmula)

La conclusión lógica a todo esto es, por tanto, que lo que falla es la
fórmula O, usándola en forma matricial (he probado a hacer una columna al
lado con la función O dentro de la condicional, pero celda por celda, y da
True para los que son blanco o negro y false para los verde, así que sin
forma matricial sí que funciona)

Tras toda esta larga explicación (pido disculpas por ella, pero cuanto más
claro, mejor), mi pregunta es:

1. ¿Se sabe si simplemente Excel tiene la limitación de no poder usar esa
función O en forma matricial?

2a. Si no hay limitación, ¿dónde puede estar el problema? Le he dado mil
vueltas y no soy capaz de verlo.

2b. Si hay limitación, ¿se os ocurre alguna fórmula alternativa para poder
sacar lo que quiero?

Muchísimas gracias!!

Preguntas similare

Leer las respuestas

#6 Infinitogool
30/05/2008 - 12:00 | Informe spam
Hola twomind"
gracias por volver a contestar... la gente se olvida que es importante saber
si la solución es buena o no..si han surgido "pegas" etc...
un saludo
Pedro J.
P.D.
... los arboles, a veces, no nos dejan ver el bosque..

Infinitogool,

Lo de las funciones de base datos lo había pensado y sí que era realmente
ideales, pero como dices no hay para moda ni percentiles.

Sin embargo la fórmula como me la has presentado es perfecta!! me sirve
perfectamente para todas las medidas estadísticas y me arregla todos los
problemas que tenía. E increible porque probé miles de cosas y no se me
había
ocurrido algo tan aparentemente simple como anidar la segunda función si
en
la condición false en vez de en la treu.

Mil millones de gracias, no sabes la de trabajo que me voy a ahorrar con
esto!!


Respuesta Responder a este mensaje
#7 Infinitogool
30/05/2008 - 15:49 | Informe spam
Hola twomind
Te mando, por si te interesa, otra forma, quizas más clara :

Para la media de los que son Blancos o Negros puedes probar con:
primero montamos las condiciones logicas
(B2:B9="NEGRO")+(B2:B9="BLANCO")

la funcion queda
{=promedio((B2:B9="NEGRO")+(B2:B9="BLANCO");D2:D9)}

Para la Media de días para envios de España y que sean de color Negro
o Blanco :
primero montamos las condiciones logicas
(A2:A9="ESPAÑA")*((B2:B9="NEGRO")+(B2:B9="BLANCO"))

la funcion queda
{=promedio((A2:A9="ESPAÑA")*((B2:B9="NEGRO")+(B2:B9="BLANCO"));D2:D9)}

un saludo
Pedro J.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida