易表在线答疑技术与交流用户社区 → [求助]语法错误


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

主题:[求助]语法错误

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
[求助]语法错误  发帖心情 Post By:2011/12/29 10:41:00 [只看该作者]

SubtotalFill(GridName,"员工代码,员工姓名","薪酬累计,本月成台,结转下月","5,2,2") And DelFor(GridName,"员工代码", "=" ,"") And DelReptRows(GridName,"员工代码") And EvalFor(GridName,"薪酬累计","Round(SumFor(GridName,"计时薪酬","员工代码", "=" ,[员工代码],"月", "=" ,[月]) + SumFor(GridName,"计件薪酬","员工代码", "=" ,[员工代码],"月", "=" ,[月]),2) ")

以上公式中,前半部用SubtotalFill()函数计算时,因[薪酬累计]是在原表中已经算出来 的,所以采用的是平均值算法,但统计出来后,在“总计”中,“薪酬累计”也是按平均值算出来的,产生错误。为纠正这一错误,加了一个EvalFor()函数对[薪酬累计]列进行惩处重算,但提示语法错误。请指教。谢谢!


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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2011/12/29 11:06:00 [只看该作者]

学习SubtotalFill()、EvalFor()两个的语法吧!

-=-=-=- 以下内容由 wjq10722011年12月29日 11:17am 时添加 -=-=-=-
1、SubtotalFill()函数-原始数据表不能是当前表;
2、EvalFor()函数-重算公式中的"引号必须要翻倍!

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2011/12/29 11:22:00 [只看该作者]

:((
我开始是只用了SubtotalFill()函数,计算出来的行中,其他都是对的,就是自动生成的“总计”不对,才想到加用EvalFor()函数对[薪酬累计]列进行重算。我看了公式说明,觉得也没有错啊:“所在表,要重算的列,重算公式,比较值”。我没有在EvalFor()函数中设置比较值,而是在重算公式SumFor()里面进行的设置。我真的弄不明白错在哪里。请老师指教啊。再次谢谢哦。

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2011/12/29 11:32:00 [只看该作者]

“总计”中也只有[薪酬累计]是错误的,其他列都正确。

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


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2011/12/29 11:45:00 [只看该作者]

EvalFor("订单表","金额","[数量] * [单价] * 0.9","产品","= ","PD01")
重算订单表中的PD01产品的金额,提供0.1的折扣。
我的公式语法和这个一样的啊,怎么就不对了呢?

 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2011/12/29 11:56:00 [只看该作者]

哦。我再试试看。

-=-=-=- 以下内容由 iyplx24252011年12月29日 11:57am 时添加 -=-=-=-
公式的说明里也没有用双引号啊。

 回到顶部
帅哥哟,离线,有人找我吗?
wjq1072
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2011/12/29 12:12:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2011/12/29 12:35:00 [只看该作者]

Import(GridName,"\\Dm10\本地磁盘 (F)\公司共享文件夹\易表系统\生产日报\scrb.egd","2012录入","","月", "=" ,[%月%]) And DelRow(GridName,1) And SubtotalFill("2012录入","员工代码,员工姓名","当月薪酬累计,本月成台,结转下月","5,2,2") And DelFor(GridName,"员工代码", "=" ,"") And DelReptRows(GridName,"员工代码") And EvalFor(""2012录入"",""当月薪酬累计"",""SumFor(""2012录入"",""计时薪酬"",""员工代码""," "=" ",[员工代码]) +SumFor(""2012录入"",""计件薪酬"",""员工代码""," "=" ",[员工代码])"" )

老师,我改成这样的还是不行啊。


 回到顶部
帅哥哟,离线,有人找我吗?
iyplx2425
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:蒙面侠 帖子:2494 积分:6748 威望:0 精华:0 注册:2011/3/30 12:48:00
  发帖心情 Post By:2011/12/29 12:54:00 [只看该作者]

Import(GridName,"\\Dm10\本地磁盘 (F)\公司共享文件夹\易表系统\生产日报\scrb.egd","2012录入","","月", "=" ,[%月%]) And DelRow(GridName,1) And SubtotalFill(GridName,"员工代码,员工姓名","当月薪酬累计,本月成台,结转下月","5,2,2") And DelFor(GridName,"员工代码", "=" ,"") And DelReptRows(GridName,"员工代码") And EvalFor(GridName,"当月薪酬累计","SumFor(""2012录入"",""计时薪酬"",""员工代码"",""="",[员工代码]) +SumFor(""2012录入"",""计件薪酬"",""员工代码"",""="",[员工代码])" )

我改成这个样子后不提示语法错误了,但[当月薪酬累计]全部为‘0’了。


 回到顶部
帅哥哟,离线,有人找我吗?
wjq1072
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2011/12/29 12:55:00 [只看该作者]

比如你需要重算"2012录入"表中"当月薪酬累计"列的公式:

1、你就需要设置这样的重算公式:
EvalFor("2012录入","当月薪酬累计","这个引号里就是需要重算的公式");

2、你现在的重算公式如果是:
SumFor("2012录入","计时薪酬","员工代码","=",[员工代码])+SumFor("2012录入","计件薪酬","员工代码","=",[员工代码])

3、那么首先你应该把这个重算公式中的引号加倍成如下:
SumFor(""2012录入"",""计时薪酬"",""员工代码"",""="",[员工代码])+SumFor(""2012录入"",""计件薪酬"",""员工代码"",""="",[员工代码])

4、然后把他放入你设置的重算公式中;
EvalFor("2012录入","当月薪酬累计","----就是放在这里----")

5、最后的重算公式结果:
EvalFor("2012录入","当月薪酬累计","SumFor(""2012录入"",""计时薪酬"",""员工代码"",""="",[员工代码])+SumFor(""2012录入"",""计件薪酬"",""员工代码"",""="",[员工代码])")


 回到顶部
总数 16 1 2 下一页