在程序里进行多重复条件判断比较容易实现,用嵌套的if和else语句就可以实现,但我们想在excel中实现这样的功能,应该如何写公式呢?有样一个表,A列存放数据

excel表中有一列数据,a1=21,a2=22,依次累加1……一直到a15=35,共15行数据,我想在d列开始设置,如果
a列的数据在21到25之间就在对应的B列的单元格显示10,即置B1:B5为10
a列的数据在26到30之间就在对应的B列的单元格显示20,即置B6:B10为20
a列的数据在31到35之间就在对应的B列的单元格显示30,即置B11:B15为30
如下图所示:

在d1单元格输入以下公式:

=IF(A1="","",IF(AND(A1>=21, A1<=25),"10",IF(AND(A1>=26,A1<=30),"20",IF(AND(A1>=31, A1<=35),"30",A1)))),以下是公式的截图

IF(A1>100,100,A1) 解释:若A1值大于100,则返回100;若不满足 条件 则返回A1本身; 衍生版:IF函数 嵌套 IF IF(A1>100,100,IF(A1<60,60,A1)) 解释: 若A1值大于100,则返回100;否则若A1值小于60,则返回60,若不满足 条件 则返回A1; if a1>100: a1=100 elif a 相当于 条件 语句:if…,…,else… 公式:=IF(logical_text, [value_if_ture], [value_if_false]) logical_text:逻辑表达式, 条件 区域; [value_if_ture]:满足逻辑表达式则显示的值; [value_if_false]:不满足逻辑表达式显示的值; 示例:=IF(B2&gt;A2,“小陈胜”,“小张胜”... 请用5秒钟的时间查看下面的代码是否存在bug。 OK,熟练的程序猿应该已经发现Bug所在了,在第8行和第10行下面我没有添加关键字break; 这就导致这段代码的行为逻辑与我的设计初衷不符了。 缺点一. 语法正确,逻辑错误 这就是第一个理由为什么程序猿很少使用switch来做 条件 判断 ,对于新手来说忘记写break实在是再普通不过了,就算是老猿忘记写也是时有发生的事情,而这个语法错误在诸多的语法检查器上没有办法检查出来的,因为从语法角度来说是正确的!可是代码的处理逻辑却是错误的!
在 C 语言 ,你可以使用 多层 嵌套 的 if-else 语句来 实现 复杂的 条件 判断 。例如,可以使用 嵌套 的 if-else 语句来 判断 一个数的正负和是否为零。下面是一个示例: #include <stdio.h> int main() { int num; printf("请输入一个整数: "); scanf("%d", &num); if (num > 0) { printf("这个数是正数\n"); } else if (num < 0) { printf("这个数是负数\n"); } else { printf("这个数是零\n"); return 0; 在上面的示例 ,我们首先输入一个整数,然后使用 嵌套 的 if-else 语句来 判断 这个数的正负和是否为零。根据输入的不同情况,会输出相应的结果。 当然,你可以根据具体需求进行 多层 嵌套 的 if-else 语句,只要符合语法规则即可。但需要注意的是,过多的 嵌套 会使代码可读性变差,建议尽量简化和优化 条件 判断 逻辑。