我在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
添加逻辑?
答案 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)