
Partimos del siguiente ejemplo que brindó un lector: “Necesito calcular el importe a facturar por consumo de agua según el siguiente criterio: un valor fijo para los primeros 1000 metros cúbicos; una tarifa por metro cúbico para los siguientes 1000 metros cúbicos, siempre que sea menor a 2000, y el doble de esa tarifa a partir de 2000 metros cúbicos. Mi consulta es: ¿se puede hacer esto con una única fórmula que considere todos los casos?”
Este es otro problema de tarifa escalonada, parecido al que tratamos hace algunas ediciones. Son tres escalones:
Hasta 1000 m3: tarifa fija de $ 1500.
De 1000 a 2000 m3: un adicional de $ 3 por cada m3.
A partir de 2000 m3: un adicional de $ 6 por cada m3.
Por ejemplo, para un consumo de 2800 m3, el importe total será igual a $ 9300:
$ 1500 por los primeros 1000 m3.
$ 3000 por los siguientes 1000 m3 ($ 3 cada uno).
$ 4800 por los 800 m3 restantes ($ 6 cada uno).
Como hay tres escalones en la tarifa, podemos hacer el cálculo combinando dos funciones condicionales SI: Si el consumo es menor a 1000 m3, valor fijo de $ 1500. Si no… si el consumo es menor a 2000 m3, $ 1500 más $ 3 por cada metro cúbico que exceda 1000. Si no… $ 1500, más $ 3000, más $ 6 por cada metro cúbico que exceda 2000.
Supongamos que la tarifa mínima está en [F1], el valor del metro cúbico está en [F2] y los consumos están en la columna [B], a partir de [B2]. La fórmula sería:
=SI(B2<1000;F$1;
SI(B2<2000;F$1+F$2*(B2-1000);
F$1+F$2*1000+2*F$2*(B2-2000)))
Las expresiones (B2-1000) y (B2-2000) calculan los consumos por encima de 1000 m3 y de 2000 m3, respectivamente. Las referencias a las tarifas ([F1] y [F2]) aparecen fijadas con signos $ para poder extender la fórmula a toda la lista de consumos sin ningún tipo de problemas.
Para no usar SI andados en caso de haya muchos “escalones”, este problema también puede resolverse con BUSCARV poniendo el último parámetro en VERDADERO (Hay que mantener ORDENADOS los escalones para que la función no se equivoque)