IF声明的逻辑

时间:2014-11-06 12:05:59

标签: excel excel-formula excel-2010 excel-2013

我在Excel中有这样的数据:

   A
 1|id
 2|2
 3|4
 4|8
 5|12
 6|16
 7|20
 8|24
 9|28
10|32
11|36
12|40

我想根据以下标准填充另一列中的值:

if cell A2>0 && cell A2<=8 
    return 1
else if cell A2>8 && cell A2<=16 
    return 2
else if cell A2>16 && cell A2<=24 
    return 3
else if cell A2>24 && cell A2<=32 
    return 4
else return 5

我只能在一个IF条件下执行此操作:

=IF(AND(A2>0,A2<8),1)

如何为else if添加逻辑?

2 个答案:

答案 0 :(得分:4)

就像我在上面的评论中所说,你不需要vba。

IF具有以下语法

=If(Condition, Do If True, Do If False)

所以在你的情况下

Condition = AND(A2>0,A2<8)
Do If True = 1
Do If False = Nothing?

因此Do If False是您设置下一个条件的地方。例如

=If(Condition, Do If True, If(Condition, Do If True, Do If False))

依旧......

像这样的东西我以第二个条件(&gt; 8,&lt; 16)为例。适用时更改。

=IF(AND(A2>0,A2<8),1,IF(AND(A2>8,A2<16),2,Next condition goes here))

答案 1 :(得分:1)

不回答问题(对于A2 = 8之类的东西等),但产生的结果与看起来似乎相同:

 =IF(OR(A2<=0,A2>32),5,INT(MOD((A2-MOD(A2-1,8))/8,8))+1)