martes, 22 de mayo de 2012

Problemas con las celdas combinadas

Las celdas combinadas son útiles para poner títulos o rótulos. Pero hay que tener cuidado porque pueden darnos muchos problemas si intervienen en fórmulas que deben ser copiadas arrastrando el controlador de relleno. Consideremos el siguiente ejemplo:

Se ha creado una celda combinada con el rango C3:C5 (Inicio + Combinar y centrar) para no repetir tres veces el precio de la tonelada de alumnio. Se ha hecho lo mismo con las celdas C6:C8 y C9:C11.

El cálculo de los valores de la columna F parece sencillísimo; basta multiplicar el valor en euros de la tonelada de cada metal por las toneladas vendidas. Veamos si es tan sencillo.

En F3:
=E3*C3   [Resultado correcto: 490.284,90 €]

Si extendemos la fórmula hasta la fila 11 obtendremos el siguiente resultado:

Evidentemente, el resultado no es correcto. En F4 la fórmula, que ha quedado así: =E4*C4, parece correcta, pero no lo es, ya que en C4 no hay nada. Cuando se combinan celdas, Excel les asigna el nombre y el valor de la que ocupa el extremo superior izquierdo; en nuestro caso, la celda combinada C3:C5 es, ahora, la celda C3. No hay nada en C4 ni en C5. Tampoco lo hay en las celdas C7, C8, C10 y C11.

Resolveremos correctamente el ejercico en las columnas H:K y luego montaremos una fórmula compuesta en la columna F.

En H3:
=RESIDUO(FILA(F3);3)

Extendemos la fórmula hasta la fila 11. Hemos conseguido numerar las celdas correspondientes a cada metal del 0 al 2.

En I3:
=FILA(F3)-H3

Extendemos la fórmula hasta la fila 11. Con esta operación hemos logrado que las celdas I3, I4 e I5 contengan el número 3, con el que compondremos la dirección C3, en la que se encuentra el precio de la tonelada de aluminio. Del mismo modo, las celdas I6, I7 e I8 contienen el 6, etc.

En J3:
=INDIRECTO(DIRECCION(I3;3))

Primero creamos la dirección C3DIRECCION(I3;3)—; luego, obtenemos su valor—INDIRECTO(DIRECCION(I3;3))—. Extendemos la fórmula hasta la fila 11.

En K3:
=E3*INDIRECTO(DIRECCION(I3;3))

Al multiplicar el valor de E3 por el de C3, obtenemos el valor correcto. Copiamos la fórmula hasta la fila 11.

Sólo nos falta crear la fórmula compuesta para prescindir de las columnas H a K.

En F3:
=E3*INDIRECTO(DIRECCION(FILA(F3)-RESIDUO(FILA(F3);3);3))

Extendemos la fórmula hasta la fila 11.

Si no hubiéramos creado celdas combinadas el ejercicio se habría resuelto con una fórmula elemental. La conclusión es clara: Para evitar problemas, prescinda de las celdas combinadas si éstas van a intervenir en fórmulas que deban extenderse a otros rangos.




5 comentarios:

  1. Me sirvió y me abrió la mente acerca de como salir del paso en situaciones similares. Probablemente una Macros sea la ruta a seguir, ¡pero cuando las cosas se tienen que hacer no hay tiempo para la estética y la eficiencia!
    Gracias....

    ResponderEliminar
  2. quiero usar la formula contar.si.conjunto y unas de mis criterios esta en celda combinada, así que la formula no funciona, como debo hacer en este caso, por favor?

    ResponderEliminar
  3. SOLO EN 3 FILAS ME DA LA RESPUESTA DE LA CELDA COMBINADA SI SON MAS POR QUE ME DA 0?

    ResponderEliminar
  4. Gracias por la magnífica solución luego de usar celdas combinadas. Excelente aporte. Lo utilicè para calcular volumen de árboles con varios fustes (tallos).

    ResponderEliminar
  5. No ,no me parece una solución práctica, en ese caso mejor hago una hoja nueva con los datos sin combinar y listo.
    Seguiré buscando, si encuentro algo, comparto la solución.

    ResponderEliminar