难倒无数高手的Excel循环使用问题,

来源:百度知道 编辑:UC知道 时间:2024/05/30 13:30:53
我现在遇上一个大难题,请高手达人,帮忙!
A B C D E
1 -1 1 0 3
2 0 3 -6 0
3 -2 7 0 9
4 0 2 0 3
5 -5 0 0 1
6 -1 8 -4 2
7 -6 5 0 3
8 -2 2 0 0
9 -7 0 -6 3
……
当C列不等于0时,计算B列在C列在两个小于零的数字区间内的最大值,在E列输出。如表中C列-6至-4区间内,在E6输出8,E列不是最低值的输出0。

e1=IF(AND(B1=MAX(OFFSET(INDIRECT("B"&X),0,0,D-X+1,1)),C1<>0),B1,0)下拖
其中D和X是定义名称
D=IF(ISERROR(MATCH(0,--((Sheet1!$C$1:$C$9<0)*ROW(Sheet1!$C$1:$C$9)<ROW()),0)),ROWS(Sheet1!$C$1:$C$9),MATCH(0,--((Sheet1!$C$1:$C$9<0)*ROW(Sheet1!$C$1:$C$9)<ROW()),0))
X=IF(ISERROR(MATCH(2,1/(0=(--(((Sheet1!$C$1:$C$9<0)*ROW(Sheet1!$C$1:$C$9)+(Sheet1!$C$1:$C$9>=0)*100)>=ROW()))))),1,MATCH(2,1/(0=(--(((Sheet1!$C$1:$C$9<0)*ROW(Sheet1!$C$1:$C$9)+(Sheet1!$C$1:$C$9>=0)*100)>=ROW())))))
是每一行对应的前后负数的行号,不懂再联系