我的公式有什么问题

时间:2018-02-06 21:21:57

标签: excel excel-formula

我一直在研究一个EXCEL公式而且卡住了。

=If(B10<4, B10*0, If(B10>3 AND B10<8, B10*1, B10*2)))

我一直收到错误。有人能告诉我它有什么问题。

我想做的是说:

  • 如果B10小于4则将B10的值乘以零
  • 如果B10在4到7之间,则将B10的值乘以1
  • Else将B10的值乘以2

3 个答案:

答案 0 :(得分:3)

AND,AND(condition1,Conditon2)不是condition1 AND Condtion2

=If(B10<4, B10*0, If(AND(B10>3, B10<8), B10*1, B10*2))

据说你根本不需要AND:

=If(B10<4, B10*0, If(B10<8, B10*1, B10*2)))

仅当B10> = 4时才会触发第二个if,因此不需要B10&gt; 3。

由于任何乘以0的内容都是0,因此您不需要B10 * 0。因为任何乘以1的东西本身,你不需要*1

=If(B10<4, 0, If(B10<8, B10, B10*2)))
  • Credit @BruceWayne。

答案 1 :(得分:1)

看起来你有一个太多的括号。应该看起来像

=If(B10<4, B10*0, If(AND(B10>3, B10<8), B10, B10*2)))

此公式采用and语句并将其置于第二个If语句中,检查单元格B10是否大于或等于4,然后检查单元格B10是否小于8或大于4 3.

答案 2 :(得分:1)

可以缩短为=B10*((B10>=4)+(B10>=8))