易表在线答疑技术与交流用户社区 → 成绩统计求助(上次用得好好的,今天平均分统计全部出错了,文件在最后)


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

主题:成绩统计求助(上次用得好好的,今天平均分统计全部出错了,文件在最后)

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2007/4/30 17:25:00 [只看该作者]

那好,按你的计算,以1班为例,抽评人数是25,其平均分是多少?并说明统计依据,我候只要你搞清楚这个问题,此问题也就解开了。

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


加好友 发短信
等级:新手上路 帖子:210 积分:0 威望:0 精华:0 注册:2007/4/24 16:01:00
  发帖心情 Post By:2007/5/1 12:00:00 [只看该作者]

下面引用由czy2007/04/30 05:25pm 发表的内容:
那好,按你的计算,以1班为例,抽评人数是25,其平均分是多少?并说明统计依据,我候只要你搞清楚这个问题,此问题也就解开了。

以011班,罗渡小学为例,原人数56人,抽评人数40人.如果用EXCEL是这样计算来的.就是先按降序排列,从高到低取前40人(只能取40人,有并列名次也是取40人来计算成绩.后面的不统计)来计算平均分为77.425,四舍五入保留两位小数为77.43.
如果以011班,罗渡小学为列,抽评人数25人,就先按降序排列,从高到低取前25人(只有25人来参与统计).来计算平均分为81.74.
不知我表述清楚没有

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2007/5/1 12:52:00 [只看该作者]

用一楼更新后的文件做测试吧,21楼的文件的设置是错误的。

我简单说一下21楼文件错在那里,你的按钮公式是填充校代码和班代码后,直接用刷新公式进行计算,这时计算出的结果只能是按原来的排序进行计算某班级N名成绩的平均值(不是按前N名来计算平均值),所以这样的计算方式显然达不到你的要求。

再来看看一楼更新后的文件按钮公式:(为便于你理解,我把变量公式加在按钮公式中,这样可能你看起来更简单一些)

SetVariable("%课程%","语文") And SortCol("成绩表",[%课程%],2) And SortCol("成绩表","班级",1) And RecalcCol(Grid,[%课程%]+"抽评") And SetVariable("%课程%","历史") And SortCol("成绩表",[%课程%],2) And SortCol("成绩表","班级",1) And RecalcCol(Grid,[%课程%]+"抽评") And SetVariable("%课程%","数学") And SortCol("成绩表",[%课程%],2) And SortCol("成绩表","班级",1) And RecalcCol(Grid,[%课程%]+"抽评") And SetVariable("%课程%","自然") And SortCol("成绩表",[%课程%],2) And SortCol("成绩表","班级",1) And RecalcCol(Grid,[%课程%]+"抽评")

公式执行过程:

SetVariable("%课程%","语文");对字符变量赋值为语文。
SortCol("成绩表",[%课程%],2);可以理解为对成绩表语文列以降序排序。
SortCol("成绩表","班级",1);对成绩表班级列以升序排序。
经过上述操作后成绩表中的数据现在以你30楼的要求方式排列了。
RecalcCol(Grid,[%课程%]+"抽评");重算本表[课程_抽评]列的刷新公式,此时得到的结果和你要求的应该完全是符合的。



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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2007/5/1 12:58:00 [只看该作者]

呵呵,我这人不太会表达,也不知你能否看得懂我的解释。

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


加好友 发短信
等级:新手上路 帖子:210 积分:0 威望:0 精华:0 注册:2007/4/24 16:01:00
  发帖心情 Post By:2007/5/1 13:51:00 [只看该作者]

下面引用由czy2007/05/01 00:52pm 发表的内容:
用一楼更新后的文件做测试吧,21楼的文件的设置是错误的。
我简单说一下21楼文件错在那里,你的按钮公式是填充校代码和班代码后,直接用刷新公式进行计算,这时计算出的结果只能是按原来的排序进行计算某班级N名 ...

版主,不好意思,我在一楼放了两个文件,一个是我要解决的,一个是旧论坛上的(供大家参考,已实现想要达到的功能),你下载了旧论坛的文件,你就在这儿下载吧
egd文件下载
其中的变量,刷新公式,按钮公式可能有错,请你修改下.

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2007/5/1 16:41:00 [只看该作者]

变量%抽评%公式:
SortCol("成绩库",[%课程%],2) And SortCol("成绩库","班代码",1) And RecalcCol(Grid,[%课程%]+"_平均分")

自定义按钮公式:

SelectFill("成绩库","校代码","校代码","班代码","班代码") And RecalcCol(Grid,"人数","抽评人数") And SetVariable("%L%",-1) And SetVariable("%课程%","语文") And [%抽评%] And SetVariable("%课程%","数学") And [%抽评%] And SetVariable("%课程%","外语") And [%抽评%] And SetVariable("%课程%","政治") And [%抽评%] And SetVariable("%课程%","历史") And [%抽评%] And SetVariable("%课程%","物理") And [%抽评%] And SetVariable("%课程%","化学") And [%抽评%] And SortCol("成绩表","考号",1) And SetVariable("%L%",0)


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


加好友 发短信
等级:新手上路 帖子:210 积分:0 威望:0 精华:0 注册:2007/4/24 16:01:00
  发帖心情 Post By:2007/5/1 17:37:00 [只看该作者]

感谢版主,语文平均分统计正确了,但现在有个问题就是其他科目不能统计出平均分.
语文平均分还要配合刷新公式:If([%L%]=0,[语文_平均分],Eval("AvgFor(""成绩库"",""语文"","+Text(FindRow("成绩库","班代码","=",[班代码]))+","+Text(FindRow("成绩库","班代码","=",[班代码])+[抽评人数]-1)+")"))是吗?
其他科目我模仿这样写刷新公式,结果易表不能正常运行.是怎么回事呀!

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2007/5/1 17:46:00 [只看该作者]

其实在我的台式电脑中此类公式同样不能运行。
教你个方法,先将下面的公式放到刷新公式中,然后执行一下公式生成器窗口上的“执行/计算”按钮。

("AvgFor(""成绩库"",""语文"","+Text(FindRow("成绩库","班代码","=",[班代码]))+","+Text(FindRow("成绩库","班代码","=",[班代码])+[抽评人数]-1)+")")

执行一次后再将全部公式就不会有问题了。


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


加好友 发短信
等级:新手上路 帖子:210 积分:0 威望:0 精华:0 注册:2007/4/24 16:01:00
  发帖心情 Post By:2007/5/1 17:56:00 [只看该作者]

这么高难度的问题都解决了,不愧是高手.想知道为什么?

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


加好友 发短信
等级:超级版主 帖子:13147 积分:-89 威望:0 精华:0 注册:2006/8/11 11:14:00
  发帖心情 Post By:2007/5/1 18:00:00 [只看该作者]

有些机子对Eval过敏,比如你我都属此列。
究其原因以前听老六说过是开发工具所致。

 回到顶部
总数 46 上一页 1 2 3 4 5 下一页