Foxtable(狐表)用户栏目专家坐堂 → [求助]关于临时表数据填充到固定表


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

主题:[求助]关于临时表数据填充到固定表

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


加好友 发短信
等级:六尾狐 帖子:1390 积分:10708 威望:0 精华:0 注册:2013/11/8 15:27:00
[求助]关于临时表数据填充到固定表  发帖心情 Post By:2017/7/18 20:18:00 [只看该作者]

我有一张“产品”表,其中有一列为“费用”,
然后有一张生成的临时表为“成本分配”表,其中也有一列“费用”列,并且按日期筛选生成
需求:我想把“成本分配”表的“费用”列的最后的汇总行金额填充到“产品”表的“费用”列的每一行,这如何实现

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/7/18 20:25:00 [只看该作者]


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


加好友 发短信
等级:六尾狐 帖子:1249 积分:9474 威望:0 精华:0 注册:2013/5/12 9:22:00
  发帖心情 Post By:2017/7/18 20:31:00 [只看该作者]

Dim t As Table = Tables("成本分配")
Dim dt As DataTable = DataTables("产品")
Dim sum As Double = t.Compute("Sum(费用)")
dt.ReplaceFor("费用",sum,"")

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


加好友 发短信
等级:六尾狐 帖子:1390 积分:10708 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2017/7/19 13:39:00 [只看该作者]

Dim sum As Double = t.Compute("Sum(费用)")
这里是需要通过两列计算得出的,如费用总额/总数量
[此贴子已经被作者于2017/7/19 13:47:48编辑过]

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


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

Dim sum As Double = t.Compute("Sum(费用)") / t.Compute("Sum(数量)")

 

如果不会做,上传具体实例。


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


加好友 发短信
等级:六尾狐 帖子:1390 积分:10708 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2017/7/19 14:04:00 [只看该作者]

或是取最后一行汇总行的数据
Dim sum As Double = Tables("成本分配")(t.Rows.Count - 1,"费用",True)

但上面的结果好象不是最后一行

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


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

 例子发上来测试吧。或者截图说明。

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


加好友 发短信
等级:六尾狐 帖子:1390 积分:10708 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2017/7/19 16:21:00 [只看该作者]

比如下图,我要取的是总计这里的数据,这个数据是通过其他列计算得出的

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170719161905.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:六尾狐 帖子:1390 积分:10708 威望:0 精华:0 注册:2013/11/8 15:27:00
  发帖心情 Post By:2017/7/19 17:26:00 [只看该作者]

目前是通过以下方式解决,但当小计行的行数有变化的时候就有问题了
Dim sum As Double = Tables("成本分配")(t.Rows.Count + 3,"费用",True)

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


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

为什么不直接统计?这个代码没毛病

 

Dim sum As Double = t.Compute("Sum(费用)") / t.Compute("Sum(数量)")

 

如果想直接获取,也可以

 

Dim t As Table = Tables("表A")
Dim sum As Double = t.rows(t.Rows.Count(True) - 1,True)("第一列")
msgbox(sum)


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