Condición si, no soporta tantos argumentos en excel 2007

hola señores de todoexpertos,

desde b2 hasta b20, con los sig. Números; 10,20,30,60,90,120,150,180,210,240,360,540,720,1080,1260,1440,1800,2130,2160.

la formula toma el numero de una celda "L12" y si es menor, hace una resta, para luego seguir avanzando según la secuencia de b2 hasta b20., la formula funciona, pero no soporta tantas variables o argumentos, y es esta:

=SI(L12<B2;B2-L12;SI(L12<B3;B3-L12;SI(L12<B4;B4-L12;SI(L12<B5;B5-L12;SI(L12<B17;B17-L12;SI(L12<B18;B18-L12))))))

por favor, ustedes me podrían ayudar con sugerencias,

gracias de antemanos,
sergio villegas echeverraía

1 Respuesta

Respuesta
1

Los números que tienes en B2:¿B20 siempre están ordenados de menor a mayor?

Tiene que ser con fórmula o quieres que te haga una macro, ¿para qué solamente presiones un botón y la macro se encargue de hacer el cálculo?

hola, gracias por responder tan rapido.

los números b2:b20 están ordenados de menor a mayor, tal cual esta expresado.

seria posible tener tanto como formula y también como una macro (código)?

se supone que en la celda L12 hay un numero (puede ser 0 hasta 2160(en realidad puede ser cualquier numero entero)), el punto, es que en la celda (que contiene la formula) debe; en caso de ser l12= 6 entonces resta b2=10, quedando como resultado 4.

y en caso que l12 cambie a 1111, entonces resta b16=1260, quedando la diferencia = 149.-

Utiliza esta fórmula, funciona para valores desde 0 hasta 2159

=SI.ERROR(DESREF($B$2;COINCIDIR(L12;$B$2:$B$20;1);0)-L12;B2-L12)

Ahora si pones 2160 ó un número mayor tendrías que validar que exista un número mayor, la fórmula completa quedaría así:

=SI(L12<MAX(B2:B20);SI.ERROR(DESREF($B$2;COINCIDIR(L12;$B$2:$B$20;1);0)-L12;B2-L12);"No hay números mayores")

Prueba y me comentas.

Saludos. Dante Amor
Si es lo que necesitas.

hola, tu formula es excelente, lo curioso que ahora también me sirvió la mia,

debo aclarar que tu formula es mucho mejor, por su prolijidad, ademas de mucho mas corta.

has sido de una gran ayuda.

gracias por todo, espero devolver la mano algún dia. que estés muy bien.

Qué bueno que te sirvió.

Podrías finalizar la pregunta.

Saludos. DAM

detecté algo, no debe aparecer "No hay números mayores", al eliminar aparece falso,

solo debe hacer la resta según el rango que le toca, voy a hacer unos ensayos y te aviso.

Solamente quita el texto, lo mismo ocurriría con tu formula ya que si pones un número mayor a 2160, entonces en tu lista no hay ningún número mayor a 2160, entonces ninguna condición se cumple, y como no se cumple ninguna condición, por eso te pone falso.

Para que no te ponga falso, pon la fórmula así:

=SI(L12<MAX(B2:B20);SI.ERROR(DESREF($B$2;COINCIDIR(L12;$B$2:$B$20;1);0)-L12;B2-L12);"")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas