Fórmula con SI (o SI.ERROR), con función O ó Y

Me queda sólo una fórmula para terminar el Excel que estoy preparando, y la verdad es que estoy bastante verde. Es una fórmula con muchos SI y O (o Y) anidados, y me estoy liando muchísimo. Soy de letras puras y ver tantos números me cuesta. A ver si podéis echarme un cable. Os comento cómo sería el tema
En la hoja 'Clientes' hay 4 celdas: A1, A2, B1 y B2. Esas cuatro celdas tienen una lista desplegable cada una para poder escoger el nombre de un cliente
En la hoja 'Productos' hay 1 celda: D1. La celda D1 lo que hace es observar otra celda de la misma hoja, la G1, que no tiene nada. Sin embargo esa celda G1 puede ser modificada en otra parte del Excel y arrojar un valor, como por ejemplo: 'Taller de metal'. Así que si en la celda G1 pone 'Taller de metal' la celda D1 se 'activa' y busca (con BUSCARV) para devolver un valor numérico de la hoja 'Tablas'
La cuestión es que si en la hoja 'Clientes' una de las cuatro celdas (A1, A2, B1 o B2) tiene un valor determinado, como por ejemplo 'Antonio', la celda D1 de 'Productos' debe buscar otra cosa. Ejemplo práctico: Si en la celda A1, A2, B1 o B2 (con que esté en una el nombre del cliente ya es válido) de la hoja 'Clientes' pone 'Antonio', y en la celda G1 pone 'Taller de metal', entonces buscar un valor en la hoja 'Tablas'; si en la celda A1, A2, B1 o B2 no pone 'Antonio', entonces buscar un valor (con BUSCARV) en la hoja 'Tablas'
No sé si me he explicado bien

1 respuesta

Respuesta
1

H o l a:

Envíame tu archivo y en la hoja me explicas los posibles casos.

Mi correo [email protected]

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

¡Gracias! 
Bueno, he podido resolverlo Dante Amor. Estaba intentando anidar demasiados Y y O porque quería que sólo utilizar un par de valores, pero he decidido 'copiar' la tabla entera, así que la fórmula queda ahora mucho más simple:
El código de la celda D1 ahora es:

=SI(O(Clientes!A1="Antonio";Clientes!A2="Antonio";Clientes!B1="Antonio";Clientes!B2="Antonio");BUSCARV(G1;Tablas!B41:S65;15;FALSO);BUSCARV(G1;Tablas!B41:S65;5;FALSO))


¿Lo malo? Que tengo que duplicar las tablas de la hoja 'Tablas', pero el proceso se simplifica mucho. Muchas gracias de todas maneras, crack

Vale, parece que no consigo solucionar el quitar el 0 cuando no hay valor
La fórmula es:

=SI(O(Personajes!D20="Marin";Personajes!D40="Marin";Personajes!V20="Marin";Personajes!V40="Marin");SI.ERROR(BUSCARV(AI14;Tablas!B41:S65;17;FALSO);"");SI.ERROR(BUSCARV(AI14;Tablas!B41:S65;7;FALSO);""))


La cuestión es que si el valor es 0, no quiero que salga nada, es decir que la celda aparezca vacía. Pero en esa fórmula tan larga soy incapaz de utilizar un SI.ERROR que funcione. En plan SI.ERROR (valor) =0;"" o algo parecido. Me da error
¿Alguna solución?


Parece que esta fórmula funciona, por si consideras que he hecho algo mal:

=SI(O(Personajes!D20="Marin";Personajes!D40="Marin";Personajes!V20="Marin";Personajes!V40="Marin");SI.ERROR(SI(BUSCARV(AI14;Tablas!B41:S65;17;FALSO);BUSCARV(AI14;Tablas!B41:S65;17;FALSO);"");"");SI.ERROR(SI(BUSCARV(AI14;Tablas!B41:S65;7;FALSO);BUSCARV(AI14;Tablas!B41:S65;7;FALSO);"");""))

H o l a:

Creo que se puede simplificar así:

=SI(O(personajes!D20="Marin";personajes!D40="Marin";personajes!V20="Marin";personajes!V40="Marin");SI.ERROR(BUSCARV(AI14;Tablas!B41:S65;17;FALSO);"");"")

sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas