易表在线答疑技术与交流应用技巧 → 看看我的超长巨无霸公式……


  共有61759人关注过本帖树形打印复制链接

主题:看看我的超长巨无霸公式……

帅哥哟,离线,有人找我吗?
易行天下
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:150 积分:0 威望:0 精华:0 注册:2006/12/13 9:01:00
看看我的超长巨无霸公式……  发帖心情 Post By:2007/1/13 11:02:00 [显示全部帖子]

If([%PROTECT%] <> "Y",SetVariable("%PROTECT%","Y") And SetVariable("%操作状态%","执行检查…") And ClearSubtotal() And Move(1,1) And SetVariable("%错误数%","0") And SetVariable("%报错内容%","") And SetVariable("%中止检查%","0") And SetLabel("@状态@","正在核对当前行") And SetLabel("@检查行数@",0) And SetLabel("@待检行数@",Rows) And SetLabel("@错误数@","正在统计…") And SetLabel("@报错内容@","") And Loop("[%中止检查%] = 0","SetLabel(""@状态@"",""正在核对→""+[基本属性_工号]) And If(FindText(""工资基准"",""基本属性_工号"",""基本属性_身份证号"", ""="" ,[基本属性_身份证号]) <> [基本属性_工号],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""1|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""基本属性_职务"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [基本属性_职务],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""2|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""基本属性_部门"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [基本属性_部门],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""3|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""")And If(FindText(""工资基准"",""基本属性_核算部门"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [基本属性_核算部门],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""4|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""基本属性_类别"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [基本属性_类别],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""5|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""基本属性_银行账号"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [基本属性_银行账号],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""6|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""基本属性_身份证号"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [基本属性_身份证号],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""7|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""工资项目_基本工资标准"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [应发款项_基本工资标准],SetVariable(""%错误数%"",[%错误数%]+1) And SetVariable(""%报错内容%"",[%报错内容%]+[姓名]+""8|"") And SetLabel(""@报错内容@"",[%报错内容%]),"""") And If(FindText(""工资基准"",""工资项目_专业补贴"",""基本属性_工号"", ""="" ,[基本属性_工号]) <> [应发款项_专业补贴],SetVariable(""%错误数%&qu

 回到顶部
帅哥哟,离线,有人找我吗?
易行天下
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:150 积分:0 威望:0 精华:0 注册:2006/12/13 9:01:00
  发帖心情 Post By:2007/1/13 11:08:00 [显示全部帖子]

这个公式的作用在于用基准表中的数据对当前数据库进行核对,一个员工核对30项,总共200个员工共计6000项,公式执行的时间是20秒,请问斑竹这个速度正常么?
我的配置是PM1.5(相当于P42.4) 内存512。

 回到顶部
帅哥哟,离线,有人找我吗?
易行天下
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:150 积分:0 威望:0 精华:0 注册:2006/12/13 9:01:00
  发帖心情 Post By:2007/1/13 15:22:00 [显示全部帖子]

洗耳恭听斑竹的高见!
等待中…………

 回到顶部
帅哥哟,离线,有人找我吗?
易行天下
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:150 积分:0 威望:0 精华:0 注册:2006/12/13 9:01:00
  发帖心情 Post By:2007/1/15 11:13:00 [显示全部帖子]

这个公式很好用哦!
公式修改不是问题,修改公式的时候除非是列名称修改的时候,我就曾经修改过,方法是使用word进行替换,很爽,顺便建议以下广大易友,很多公式修改的时候都可以借用word来帮忙省时省力还不容易出错。
这个公式的主要作用是纠错并将错误加上代码给显示出来。

 回到顶部
帅哥哟,离线,有人找我吗?
易行天下
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游民 帖子:150 积分:0 威望:0 精华:0 注册:2006/12/13 9:01:00
  发帖心情 Post By:2011/7/1 11:11:00 [显示全部帖子]

谢谢大家的力顶!当时制作这么长的公式还好不是很费事,我主要是想测试易表的函数执行效率到底如何,还是比较不错的。至于函数的维护,我都是放入Word中进行检索替换,也很方便。只要大家的函数设置规律性强、设置合理,任何的公式维护起来都是很方便的。

 回到顶部