Tengo un documento Calc con varias hojas funcionando como tablas de BBDD que contienen unas 2.000 filas. Estoy usando unas fórmulas de suma matricial con varios criterios (que he aprendido de este foro, así que gracias) y estoy teniendo problemas con el rendimiento. No se si podríais ayudarme para mejorar el rendimiento, quizás haciendo lo mismo pero de otra manera o con otra fórmula.
La fórmula es como la siguiente (la verdadera utiliza mas criterios):
Código: Seleccionar todo
{=SUMA( (OtraHoja.A2:A1000=EstaHoja.A2) * (OtraHoja.B2:B1000=EstaHoja.B2) * ( (OtraHoja.C2:C1000="Un valor") + (OtraHoja.C2:C1000="Otro valor") ) * (OtraHoja.D2:D1000) ) }Estoy usando la multiplicación como Y lógico y la suma como O lógico.
Estas son mis preguntas:
1. ¿Existe alguna manera de hacer esto mas sencillo y con menos cálculos? Aun no termino de entender como funciona BDSUMA y no se si serviría en este caso, y creo que SUMA.PRODUCTO hace exactamente lo mismo que lo que ya tengo.
2. Para la condición lógica O que necesito inicialmente pensé en un operador de conjunto "CONTENIDO EN" o "PERTENECE" para escribir algo como (utilizo una sintaxis figurada) "OtraHoja.C2:C1000 CONTENIDO EN {"Un valor", "Otro Valor"}: pero no he encontrado en Calc un operador de conjunto, o una forma de definir conjuntos literalmente o una función que me pueda servir en mi fórmula. He intentado usar búsqueda con funciones de texto pero como las funciones dan un código de error si la cadena no es encontrada al final la fórmula en su conjunto no funciona bien.
Agradecería mucho si alguien puede decirme el modo de hacer esto de forma mas fina y menos pesada.
Gracias por vuestro tiempo y saludos.
Antonio.