以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]关于临时表数据填充到固定表  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=103863)

--  作者:lgj716330
--  发布时间:2017/7/18 20:18:00
--  [求助]关于临时表数据填充到固定表
我有一张“产品”表,其中有一列为“费用”,
然后有一张生成的临时表为“成本分配”表,其中也有一列“费用”列,并且按日期筛选生成
需求:我想把“成本分配”表的“费用”列的最后的汇总行金额填充到“产品”表的“费用”列的每一行,这如何实现

--  作者:有点蓝
--  发布时间:2017/7/18 20:25:00
--  
参考:http://www.foxtable.com/webhelp/scr/1533.htm
--  作者:wyz20130512
--  发布时间: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
--  发布时间:2017/7/19 13:39:00
--  
Dim sum As Double = t.Compute("Sum(费用)")
这里是需要通过两列计算得出的,如费用总额/总数量
[此贴子已经被作者于2017/7/19 13:47:48编辑过]

--  作者:有点甜
--  发布时间:2017/7/19 14:02:00
--  

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

 

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


--  作者:lgj716330
--  发布时间:2017/7/19 14:04:00
--  
或是取最后一行汇总行的数据
Dim sum As Double = Tables("成本分配")(t.Rows.Count - 1,"费用",True)

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

--  作者:有点甜
--  发布时间:2017/7/19 14:15:00
--  
 例子发上来测试吧。或者截图说明。
--  作者:lgj716330
--  发布时间:2017/7/19 16:21:00
--  
比如下图,我要取的是总计这里的数据,这个数据是通过其他列计算得出的

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


--  作者:lgj716330
--  发布时间:2017/7/19 17:26:00
--  
目前是通过以下方式解决,但当小计行的行数有变化的时候就有问题了
Dim sum As Double = Tables("成本分配")(t.Rows.Count + 3,"费用",True)
--  作者:有点甜
--  发布时间: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)