Foxtable(狐表)用户栏目专家坐堂 → 公式也会犯神经啊


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

主题:公式也会犯神经啊

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


加好友 发短信
等级:幼狐 帖子:105 积分:849 威望:0 精华:0 注册:2015/1/25 23:22:00
公式也会犯神经啊  发帖心情 Post By:2015/5/13 21:07:00 [只看该作者]

公式出错了,很奇葩
dim jy as Double
dim sr as Double
dim zc as Double
dim i as Integer
Dim hs As Integer =Tables("统计").Rows.Count - 1
for  i = 0 to hs
dim dr as datarow = DataTables("统计").DataRows(i)
sr = sr + dr("收入")
zc = zc + dr("支出")
jy = jy + sr - zc
dr("结余") = jy
next
这个公式应该没有问题吧,好几百项都没问题,可是就只有在我选择统计其中的一种物料时的最后一行出错,并且上一行的结余是3.23(正确)
下一行收入为0,发出3.23,可是算出的结余却是8.886966888,选其他物料不会出错,并且我要是把这个统计放在两个时间段分别统计的话也都不会出错。确实不知道是怎么回事了,呵呵

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/13 21:14:00 [只看该作者]

Dim jy As Double
Dim sr As Double
Dim zc As Double
For Each dr As Row In Tables("统计").Rows
    sr = sr + dr("收入")
    zc = zc + dr("支出")
    jy = jy + sr - zc
    dr("结余") = jy
Next

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


加好友 发短信
等级:幼狐 帖子:105 积分:849 威望:0 精华:0 注册:2015/1/25 23:22:00
  发帖心情 Post By:2015/5/13 21:18:00 [只看该作者]

这样可以,可是我那样为什么会有一个不正确的呢,统计表的数据是根据窗口选项变化的,会排序后逐行进行窗口添加控件,我写的代码有错误码?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/13 21:19:00 [只看该作者]

 你的代码,这句

 

dim dr as datarow = DataTables("统计").DataRows(i)

 

 改成这句就没问题

 

dim dr as row = Tables("统计").Rows(i)


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


加好友 发短信
等级:幼狐 帖子:105 积分:849 威望:0 精华:0 注册:2015/1/25 23:22:00
  发帖心情 Post By:2015/5/13 21:27:00 [只看该作者]

改完后那一个个例还是出错,呵呵,一开始用的上面的代码,但是发现排序不行,所以改为你那代码,结果发现了一个个例。呵呵,按说公式本身应该没问题的啊,怎么会有那么一个个例呢?

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/5/13 21:32:00 [只看该作者]

呃,上传例子吧


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


加好友 发短信 一级勋章
等级:超级版主 帖子:7258 积分:40773 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2015/5/14 3:00:00 [只看该作者]

因为有N个最新修改过的行未保存,用代码自动先保存当前行!

 回到顶部