以文本方式查看主题 - 易表在线答疑 (http://egrid2000.com/dvbbs/index.asp) -- 用户社区 (http://egrid2000.com/dvbbs/list.asp?boardid=2) ---- [求助]怎样改这个公式为循环公式运行啊? (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=1947) |
-- 作者:楚风 -- 发布时间:2011/9/14 0:16:00 -- [求助]怎样改这个公式为循环公式运行啊? [这个贴子最后由楚风在 2011/09/14 00:17am 第 1 次编辑] 又要请教各位老师了,易表循环公式如何运用啊?如下段公式:Move(1,11) And if(row=1,[报账金额] - [支出],EvalFor("现金账","余额","[报账金额] + cell(row-1,""余额"") - [支出]")) And Move(2,11)And if(row=1,[报账金额] - [支出],EvalFor("现金账","余额","[报账金额] + cell(row-1,""余额"") - [支出]"))And Move(3,11)And if(row=1,[报账金额] - [支出],EvalFor("现金账","余额","[报账金额] + cell(row-1,""余额"") - [支出]"))And Move(4,11)And if(row=1,[报账金额] - [支出],EvalFor("现金账","余额","[报账金额] + cell(row-1,""余额"") - [支出]")) 请教的问题是: 1、把以上公式改为循环运行的公式,要怎样写公式呢?再谢了!! |
-- 作者:lyang70 -- 发布时间:2011/9/14 9:17:00 -- 这个公式没必要写循环公式,楼主的想法是通过移动行再对指定的行/列进行计算,可EvalFor就是针对某列的计算,所以没有必要。 就你的语法组织来看,这个公式楼主是想放在按钮中吧?这个肯定不行,应为if(row=1,[报账金额] - [支出],EvalFor...中红色标记部分就不成立。 如果硬要循环执行的话,可以这样:Move(1,11) And Loop("2 > 1","SetCellText(GridName,Row,""余额"",If(Row = 1,[报账金额] - [支出],[报账金额] + Cell(Row-1,""余额"") - [支出])) And Move(Row+1,11)",Rows) |
-- 作者:ZM296514 -- 发布时间:2011/9/14 11:03:00 -- “余额”列用刷新公式得不? If(Row = 1,[报账金额] - [支出],[报账金额] + Cell(Row-1,"余额") - [支出]) |
-- 作者:楚风 -- 发布时间:2011/9/14 14:11:00 -- 谢谢啦,主要是因为我在刷新公式用时是可以达到目的,但放到按钮里第一行就不会达到效果,而其它行正常用。不知为什么? |
-- 作者:lyang70 -- 发布时间:2011/9/14 14:37:00 -- 如果第一行不能执行可以通过操作公式干预执行... |
-- 作者:还不错 -- 发布时间:2011/9/14 15:42:00 -- 舍简求繁。 |
-- 作者:楚风 -- 发布时间:2011/9/14 16:20:00 -- 谢谢啦,我提了两个问题,在另一个问题的解答中,已很简捷的解决了以上的要求,谢谢啦。有您好们的帮助,工作顺利完成,从中也体会到了乐趣,更感受到相隔天涯,虽不谋面,却一股股暖流遍及论坛。感谢谢您们的热情帮助!!!! |