¿Cómo crear un rango variable?

Respuesta de
a
Usuario
Hola expertos,
Quiero crear rangos de celdas en Excel que varíen según un criterio.
Me explico:
1. Tengo 15 celdas con datos en una columna (ex. A1:A15) para formar mínimo 3 grupos de 5 celdas cada uno máximo (A1:A5 - A6:A10 - A11:A15). Es decir 3 rangos. Cada rango está fomrado de mínimo 1 celda y máximo 5 celdas.
2. Por un criterio, el primer rango se forma, por ejemplo, por 2 celdas y el último rango por 3 celdas. Así, tengo 4 rangos: R1= A1:A2 (2 celdas), R2= A3:A7 (5 celdas), R3= A8:A12 (5 celdas) y R4= A13:A15 (3 celdas).
3. Como ven, el primero y el último rangos pueden cambiar de cantidad de celdas, pero el o los rangos intermedios nunca cambian, siempre son de 5 celdas, lo que cambia es el número o la identificación de las celdas que componen cada rango.
4. Hay un mínimo de 3 rangos y un máximo de 4 rangos. Así, si mi primer rango tiene menos de 5 celdas (ex. 1 celda), habrán 4 rangos y el último tendrá la cantidad de celdas para completar 5 (ex. 4 celdas). Los dos rangos intermedios tienen 5 celdas cada uno. Por corolario, si el primer rango tiene 5 celdas, habrán solo 3 rangos y los otros dos rangos tienen 5 celdas cada uno también.
5. Siempre son las mismas 15 celdas, pero organizadas de manera diferente.
La pregunta es simple: ¿Cómo hago eso?
Gracias por sus respuestas.
 
Experto
La respuesta es más o menos compleja, según lo que quieras hacer con esos rangos. Imagino que pondrás en una celda un número, por ejemplo un 2, y eso significa que tus 15 celdas se agrupan en 2-5-5-3. O si pones un 0 (o un 5) entonces los grupos son 5-5-5.
Una vez formados los grupos, ¿qué hacemos con ellos? ¿Hay qué sumar cada rango? Lo quieres diferenciar con colores (¿por ejemplo)?
El tratamiento a tu pregunta es distinto según lo que quieras hacer con ello. Dime algo más y lo miramos.
Saludos.
Usuario
El objetivo es solo sumar los rangos. Lo importante es que sean variables de acuerdo a lo que expliqué (no sé si es claro). Entonces:
1. Se forman los grupos.
2. Se suman los valores de las celdas de cada grupo.
Una última pregunta: ¿Se puede hacer sin macros? Si no, no es problema, solo que hay quienes no les gusta activar las macros por miedo a virus y esas cosas.
Gracias.
Experto
Lo que necesitas entonces son 5 celdas. Una para poner un número de 0 a 4 que es el que nos indicará los rangos, y las otras 4 para poner la suma. Obviamente, cuando el número que indica los rangos sea 0, una de las casillas de las sumas quedará vacía.
Lo puedes hacer anidando la función SI.
Pues en la celda B3 pones:
=si(B2=0;suma(a1:a5);si(B2=1;A1;si(B2=2;suma(a1:a2);si(B2=3;suma(A1:A3);si(B2=4;suma(A1:a4);"ERROR")))))
En la celda B4:
=si(B2=0;suma(a6:a10);si(B2=1;suma(A2:a6);si(B2=2;suma(a3:a7);si(B2=3;suma(A4:A8);si(B2=4;suma(A5:a9);"ERROR")))))
En la celda B5:
=si(B2=0;suma(a11:a15);si(B2=1;suma(A7:a11);si(B2=2;suma(a8:a12);si(B2=3;suma(A9:A13);si(B2=4;suma(A10:a14);"ERROR")))))
En la celda B6:
=si(B2=0;"";si(B2=1;(suma(A12:A15);si(B2=2;suma(a13:a15);si(B2=3;suma(A14:A15);si(B2=4;a14;"ERROR")))))
De esta manera, en función del número que coloques en la B2 te hará las sumas de una u otra manera. Si en B2 colocas algo que no sea un número del 0 al 4, te saldrá el mensaje "ERROR".
Pruébalo y me dices que tal, ¿de acuerdo?
Saludos.
Usuario
Muchas gracias, eso era lo que necesitaba.
Hasta la próxima!