以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教如何设计这个表达式 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80767) |
||||
-- 作者:意悠心轻 -- 发布时间:2016/1/31 21:43:00 -- 请教如何设计这个表达式 请问如何定分配金额的表达式。 我原在excel里设了公式:{=IFERROR(IF(COUNT(FIND("旷工",I80)),0,IF($B80="",IF(ROW($B80)>MAX(IF($B$3:$B$1263<>"",ROW($B$3:$B$1263),""))+2,0,IF(ROW(B80)=MAX(IF($B$3:$B$1263<>"",ROW($B$3:$B$1263),0))+2,SUM($J$3:dw)/2,SUM($J$3:dw)-SUMIF($A$3:dw,$A80,J$3)*2)),IF(E80="个人",H80,(SUMIFS(H:H,A:A,A80,C:C,C80,E:E,E80)/IF(COUNTIF(E80,"集体*")*(COUNTIF(INDIRECT("b"&MATCH(A80&C80&E80,A$3:A$1263&C$3:C$1263&E$3:E$1263,)+2&":b"&ROW()),B80)=1),SUM((MATCH(A$3:A$1263&B$3:B$1263&C$3:C$1263&$E$3:$E$1263,A$3:A$1263&B$3:B$1263&C$3:C$1263&$E$3:$E$1263,)=ROW($1:$1261))*(A$3:A$1263=A80)*(C$3:C$1263=C80)*(E$3:E$1263=E80)),""))))),0)} 由于数组公式太多,运行很慢,现在想改用Foxtable 2016软件设计,由于初学,还不是很会用这软件,我应如何定这分配公式呢?分配方案是:同一天同集体的人生产同一产品,数量相同,工资安工件工资总和对该组不重复人平均分配,例如有时5个人共同做6、或7个工序,表上需然写一人做2个工序,实为集体做的,只是随意写一个名。生产形式为集体中相同名字只分配一次,不重复显示,非集体的按个人计算,即数量乘单价即可,计时时间(这是按时间计算工资时在另一列计算的,但如出现旷工二字,不计算当天工资)。如图:此为我用excel计算的结果:
[此贴子已经被作者于2016/1/31 21:51:53编辑过]
|
||||
-- 作者:Hyphen -- 发布时间:2016/2/1 8:43:00 -- 用Foxtable表达式是做不了的,只能通过代码计算,只是1楼的逻辑不是很明白 |
||||
-- 作者:大红袍 -- 发布时间:2016/2/1 9:42:00 -- 初学的话,先看一看视频教程
http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=67187
你的问题,就是简单的分组统计而已 http://www.foxtable.com/help/topics/00143.htm
|
||||
-- 作者:意悠心轻 -- 发布时间:2016/2/1 23:32:00 -- 不是,我不是统计,而是安计件工资重新分配,昨晚发了贴没人回后我自己在看教程,看操作说明,知道表达式不能实现了,今晚学着在命令里弄,不成功。 [此贴子已经被作者于2016/2/2 11:17:14编辑过]
|
||||
-- 作者:意悠心轻 -- 发布时间:2016/2/1 23:33:00 -- 你这连接我看过了,程序没那么简单。 |
||||
-- 作者:大红袍 -- 发布时间:2016/2/2 0:11:00 -- 做个foxtable的例子上传测试。 |
||||
-- 作者:意悠心轻 -- 发布时间:2016/2/2 11:10:00 -- 上传了,请指教。 密码:111222333
[此贴子已经被作者于2016/2/2 11:14:20编辑过]
|
||||
-- 作者:大红袍 -- 发布时间:2016/2/2 11:11:00 -- 密码贴出来 |
||||
-- 作者:意悠心轻 -- 发布时间:2016/2/2 11:16:00 -- 我在生产形式添加了一个旷工选项重新上传,密码:111222333 |
||||
-- 作者:大红袍 -- 发布时间:2016/2/2 11:22:00 -- 具体什么意思?要做什么效果?请说明吧。 |