在excel表格中,如何建立一个if循环函数?

 我来答
霸道的浴霸
高粉答主

推荐于2019-10-08 · 说的都是干货,快来关注
知道大有可为答主
回答量:254
采纳率:46%
帮助的人:10.1万
展开全部

根据你的意思,如果用if语句的话,很难实现,但是你的公式中的循环有个规律,就是倒着数(即从A25到A2的内容依次排列)第一个不为0的单元格减去A2即所得单元格,但是有个特列,就是如果倒着数第一个不为0的单元格如果是A2的话,那么就要输出A2内容,而不是输出第一个不为0的单元格(A2)减去A2成为0
所以,需要嵌套一个if语句,这样就得到如下公式:
=IF(MAX((A2:A25<>0)*ROW(A2:A25))=2,A2,INDIRECT("A"&MAX((A2:A25<>0)*ROW(A2:A25)))-A2)
将该公式复制到A26单元格里,然后按Ctrl+回车即可(这里是数组公式,需要同时按下Ctrl和回车键

插入名称的方式可以做,但也得定义2-3个名称。
通常二十几层的嵌套式没有必要的。有没有不用IF嵌套的办法呢?
如果你只是要求A3-A24都=0(空格不算0),才给出结果A3-A2,那么完全可以用COUNTIF:
=if(countif(a3:a24,0)=row(a24)-row(a3),a3-a2,a2)

齐霸王在江湖梦
2018-03-09 · TA获得超过3312个赞
知道小有建树答主
回答量:726
采纳率:75%
帮助的人:68.8万
展开全部
根据你的意思,如果用if语句的话,很难实现,但是你的公式中的循环有个规律,就是倒着数(即从A25到A2的内容依次排列)第一个不为0的单元格减去A2即所得单元格,但是有个特列,就是如果倒着数第一个不为0的单元格如果是A2的话,那么就要输出A2内容,而不是输出第一个不为0的单元格(A2)减去A2成为0
所以,需要嵌套一个if语句,这样就得到如下公式:
=IF(MAX((A2:A25<>0)*ROW(A2:A25))=2,A2,INDIRECT("A"&MAX((A2:A25<>0)*ROW(A2:A25)))-A2)
将该公式复制到A26单元格里,然后按Ctrl+回车即可(这里是数组公式,需要同时按下Ctrl和回车键)
祝你成功!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式