以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  [求助]这个公式怎么来写??  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=4515)

--  作者:hbfnmxb
--  发布时间:2006/10/22 20:29:00
--  [求助]这个公式怎么来写??
egd文件下载
谢谢,我上的地址不对,
现在是这样的问题,在这个表中,周名次列中,相同班级、相同月份的平均分是一样的,在周名次列中,班平均一样,名次一样,并且名次要连续(两个第一、允许有两个第二.....)
如果班平均不0,则周名次为15,名次赋分为0,如果班平均不为0,则周名次为1-14名,名次赋分为14-1分。。。现在各表中在班平均不为0的情况下,有的周名次大于15,这个公式怎么改??
--  作者:czy
--  发布时间:2006/10/22 20:36:00
--  
1、是不是周名次大于15就不显示?
2、周名次是以周成绩为准,还是以班平均为准?
--  作者:hbfnmxb
--  发布时间:2006/10/22 20:47:00
--  
1.周名次不能大于15,周成绩为0则班平均为0,则周名次为15。
2.周名次以班平均为准。
谢谢
--  作者:czy
--  发布时间:2006/10/22 21:13:00
--  
试试这个按钮公式能不能达到你的要求?

Subtotal("周数,月数","周成绩","2") And SortCol(Grid,"班平均",2) And EvalFor(Grid,"周名次","if([周成绩]=0,15,if(row=firstrow,1,if([班平均]=cell(row-1,""班平均""),cell(row-1,""周名次""),if(cell(row-1,""周名次"")+1>15,15,cell(row-1,""周名次"")+1))))") And ClearSubtotal()


--  作者:hbfnmxb
--  发布时间:2006/10/22 21:26:00
--  
谢谢,是我想要的,不过就是计算速度慢了一点,还有没有其它好的办法??
--  作者:xjy
--  发布时间:2006/10/22 21:33:00
--  
下面引用由hbfnmxb2006/10/22 08:29pm 发表的内容:
谢谢,我上的地址不对,
现在是这样的问题,在这个表中,周名次列中,相同班级、相同月份的平均分是一样的,在周名次列中,班平均一样,名次一样,并且名次要连续(两个第一、允许有两个第二.....)
如果班平均不 ...

公式并没有问题,有问题的是你的数据:周数为1和周数为2的都有两个,可能是你复制数据没有审核周数所致。你删除重复的数据,或者改为正确的周数,试一试。
--  作者:czy
--  发布时间:2006/10/22 21:36:00
--  
不会吧,这个公式比你原来重算周名次列的刷新公式感觉要快。

--  作者:hbfnmxb
--  发布时间:2006/10/22 22:04:00
--  
好的,我试一下,谢谢你!!
--  作者:hbfnmxb
--  发布时间:2006/10/23 6:26:00
--  
下面引用由xjy2006/10/22 09:33pm 发表的内容:
公式并没有问题,有问题的是你的数据:周数为1和周数为2的都有两个,可能是你复制数据没有审核周数所致。你删除重复的数据,或者改为正确的周数,试一试。

我试过,不如原来的快,因为周数为1和周数为2的都有两个,才改的这个公式,数据应该是这样的,它们不是重复的数据,
如果此公式能改,最好给我改一下,也许是我的机子太老了吧,老机子应该用快公式,否则更不能胜任此工作了。谢谢!!


--  作者:xjy
--  发布时间:2006/10/23 8:23:00
--  
哈哈,每个班同1周有两个数据?不会吧

-=-=-=- 以下内容由 xjy2006年10月23日 08:26am 时添加 -=-=-=-
数据内容总是应该不同的吧,你用一个列区别下,并改下刷新公式新就行了。