Foxtable(狐表)用户栏目专家坐堂 → [原创]


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

主题:[原创]

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


加好友 发短信
等级:七尾狐 帖子:1653 积分:14702 威望:0 精华:0 注册:2014/6/6 8:42:00
[原创]  发帖心情 Post By:2014/8/5 15:14:00 [只看该作者]

您好!

Dim drs As List(of DataRow) = DataTables("表A").Select("", "项目,日期") '注意排序参数
drs(0)("累计支出") = drs(0)("支出"
) '设置第一行的累计支出
For
i As Integer = 1 To drs.Count - 1  '从第二行开始逐行计算累计支出
    If
drs(i)("项目") = drs(i - 1)("项目") Then
        drs(i)("累计支出") = drs(i-1)("累计支出") + drs(i)("支出"
)
    Else

        drs(i)("累计支出") = drs(i)("支出"
)
   
End If
Next

这一组代码,单独用如果增加第一行没问题,但是如果套用在其它有默认值什么的表中,增加第一行总是提示运行错误:索引超出范围,必须为非负值或小于集合大小。默认值等越多提示越多。这是为什么啊?

    初学者,拜各位为师!请多指教!

[此贴子已经被作者于2014-8-5 15:22:06编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/5 15:16:00 [只看该作者]

 例子发上来,单独一段代码别人不知道你什么情况


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


加好友 发短信
等级:一尾狐 帖子:431 积分:3214 威望:0 精华:2 注册:2011/9/10 21:35:00
  发帖心情 Post By:2014/8/5 15:31:00 [只看该作者]

Dim drs As List(of DataRow) = DataTables("表A").Select("", "项目,日期") '注意排序参数
在其他表你要保证以上集合的DataRow的数量要>0

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


加好友 发短信
等级:七尾狐 帖子:1653 积分:14702 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2014/8/5 15:33:00 [只看该作者]

我一个疫苗出入库登记表,要用到逐行累计,套用教材上的“非等于比较。。。比较合适,“项目--去向单位,日期--出入库日期,支出--疫苗数量,累计支出--累计疫苗数量”,就这样套用增加第一行没问题,如果将“去向单位列”设为默认值“接种消耗”,就出现:索引超出范围。。。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/5 15:37:00 [只看该作者]

 做个例子发上来

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


加好友 发短信
等级:七尾狐 帖子:1653 积分:14702 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2014/8/5 15:39:00 [只看该作者]

谢谢!我再学习学习!


 回到顶部