Foxtable(狐表)用户栏目专家坐堂 → [求助]在加入计算“标准差”时总是报错,是代码错了吗?


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

主题:[求助]在加入计算“标准差”时总是报错,是代码错了吗?

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


加好友 发短信
等级:小狐 帖子:376 积分:4189 威望:0 精华:0 注册:2008/9/1 14:18:00
[求助]在加入计算“标准差”时总是报错,是代码错了吗?  发帖心情 Post By:2012/4/11 22:58:00 [只看该作者]

在“理科有效分”计算窗口中加入dr("标准差") = DataTables("成绩库").Compute("Std(语文)")时总是报错,不加此无误。


是代码错了吗?

 

统计出来要达到的要求是:Excel文件:“理科有效分”

 

麻烦您帮我看一下怎么修改。谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:理科有效分.xls


图片点击可在新窗口打开查看此主题相关图片如下:错误提示.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:高中期末成绩统计.rar


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2012/4/11 23:30:00 [只看该作者]

Std是AggregateEnum枚举的类型,您这样张冠李戴当然出错,把这一句:dr("标准差") = DataTables("成绩库").Compute("Std(语文)")换成下面的代码试一试:

 

Dim p As Integer = Tables("成绩库").Cols("语文").Index

Dim rs As Integer = Tables("成绩库").Rows.Count -1

dr("标准差") = DataTables("成绩库").Aggregate(AggregateEnum.Std, 0, p, rs, p)

[此贴子已经被作者于2012-4-11 23:51:02编辑过]

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


加好友 发短信
等级:婴狐 帖子:41 积分:479 威望:0 精华:0 注册:2012/4/12 9:51:00
  发帖心情 Post By:2012/4/12 15:10:00 [只看该作者]

谢了!dr("标准差") = DataTables("成绩库").Aggregate(AggregateEnum.Std, 0, p, rs, p)
应改为dr("标准差") = Tables("成绩库").Aggregate(AggregateEnum.Std, 0, p, rs, p)才行。


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2012/4/12 15:43:00 [只看该作者]

datatable是你的原始写法,把我带沟里去了,我没看见您的全部代码,也没在意!

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


加好友 发短信
等级:婴狐 帖子:41 积分:479 威望:0 精华:0 注册:2012/4/12 9:51:00
[求助]填充“平均分之和”  发帖心情 Post By:2012/11/10 15:03:00 [只看该作者]

上述问题已经解决了。但又遇到新问题了。

在填充“平均分之和”时最后一科“生物”填充进去了,语数英理化无法填充。麻烦您帮我看一下。

平均分之和=语数英物化生各科平均分之和”。谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:高中期末成绩统计程序.rar

[此贴子已经被作者于2012-11-10 16:21:42编辑过]

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/10 20:56:00 [只看该作者]

 在得到生物平均分的地方,写入如下代码。标准差平均分同样这样做。

Dim sum As Double = Tables("总分有效分").Aggregate(AggregateEnum.Sum, 0, q, 5, q)
For i As Integer = 0 To 5
     Tables("总分有效分").Rows(i)("平均分之和") = sum
Next

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


加好友 发短信
等级:婴狐 帖子:41 积分:479 威望:0 精华:0 注册:2012/4/12 9:51:00
[求助]“有效分”的填充问题  发帖心情 Post By:2012/11/11 2:37:00 [只看该作者]

谢谢!“平均分之和”、“标准差之和”问题解决了。

总分和生物的“有效分”已经填充,但“语、数、英、物、化”的“有效分”不知如何填充了,麻烦版主帮帮忙。谢谢!

各科重点有效分=(重点线-平均分之和)/各科标准差之和*该科标准差+该科平均分

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:高中期末成绩统计程序1.rar


图片点击可在新窗口打开查看此主题相关图片如下:现在的计算结果.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2012-11-11 22:58:35编辑过]

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


加好友 发短信
等级:小狐 帖子:365 积分:2693 威望:0 精华:1 注册:2011/11/25 7:55:00
  发帖心情 Post By:2012/11/11 3:33:00 [只看该作者]

For Each r As Row In tbl.Rows
    r("重点有效分") = (r("重点线") - r("平均分之和")) /r("标准差之和")*r("标准差")+r("平均分")
Next


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


加好友 发短信
等级:婴狐 帖子:41 积分:479 威望:0 精华:0 注册:2012/4/12 9:51:00
  发帖心情 Post By:2012/11/11 12:00:00 [只看该作者]

谢谢!我不知这个代码加在什么地方?

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/11/12 11:03:00 [只看该作者]

以下是引用lpedu_jks在2012-11-11 12:00:00的发言:
谢谢!我不知这个代码加在什么地方?

加在生成 生物 行的后面,也就是下面代码的后面。因为要得到 平均分之和、标准差之和。

Dim sum As Double = Tables("总分有效分").Aggregate(AggregateEnum.Sum, 0, q, 5, q)
For i As Integer = 0 To 5
     Tables("总分有效分").Rows(i)("平均分之和") = sum
Next

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