Excel不同区间段,使用不同的公式,急求!

比如:
条件1:
A列 B列
当 280<=A<350 B=1.2
当350<=A<500 B=1.5
当500<=A B=2
A列 C列(最终求值)
当280<=A<350 (A-280)*1.2+100
当350<=A<500 (A-380)*1.5+200
当500<=A (A-500)*2+300
因为是月报表,人员固定,但是同一个人每个月的A和B可能不同,如果做一个固定的不同区间段,使用不同公式的判定呢?
我现在做到以下部分
B列=IF(A<280,"0",IF(A<350,"1.2",IF(A<500,"1.5","2")))
C列要根据B列的变化选取不同的求值公式

第1个回答  2013-04-12
假设数据在A1单元格
B1单元格公式:
=LOOKUP(A1,{-9E+307,280,350,500},{0,1.2,1.5,2})
C1单元格公式:
=(A1-LOOKUP(A1,{-9E+307,280,350,500},{0,280,380,500}))*B1+LOOKUP(A1,{-9E+307,280,350,500},{0,100,200,300})
选取B1:C1单元格,格式柄下拉复制公式追问

感谢,公式可以使用,不过想问下大虾
{-9E+307,280,350,500},{0,280,380,500}
这里的-9E+307是什么意思,还有这段前后一个是350一个是380,怎么理解啊
如果我换了一些数据,这里我就不会改了
我另外还有一组数据跟刚才的一样,请看
400<=N<600 时 (N-400)*0.5+160
600<=N<1200时 (N-600)*0.6+280
1200<=N时 (N-1200)*0.8+640

追答

-9E+307是一个数,这是科学计数的表示方法,表示负9乘以10的307次方,也为了保证函数公式查寻值的范围,以便不出现#N/A错误值!
LOOKUP函数有向后兼容性,当查询A1内的数值要是大于等于350小于500时,取值380
即返回小于等于查寻值的最大值(可能不好理解,看一下函数帮助体会一下)
注意:{-9E+307,280,350,500},必须按升序排列
为了便于理解我改一下,看是不是你想要的结果?
O1单元格公式:
=LOOKUP(N1,{-9E+307,400,600,1200},{0,0.5,0.6,0.8})
P1单元格公式:
=(N1-LOOKUP(N1,{-9E+307,400,600,1200},{0,400,600,1200}))*O1+LOOKUP(N1,{-9E+307,400,600,1200},{0,160,280,640})
选取O1:P1单元格,格式柄下拉复制公式,是这样吗?

本回答被提问者采纳
第2个回答  2013-04-12
从我看到的结果看,你完全可以忽略B列啊,因为在C列给公式的时候,直接就安装3个if函数给出相应的结果就可以了。
第3个回答  2013-04-12
把B列的公式里的“1.2” “1.2” “2”分别改为 (A-280)*1.2+100 (A-380)*1.5+200 (A-500)*2+300就可以了
B列不用吧