以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 多表合并数据 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97897) |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2017/3/20 18:43:00 -- 多表合并数据 有三个表格:汇总表,手术室、外科(除了汇总表之外,可能还会有更多需要合并数据的表格),它们的数据结构一样。手术室和外科里面的数据有些是相同的(其中数量相同也有可能不同),有些是不同的,现要把手术室和外科里面的数据填充到汇总表中。 汇总表图 |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2017/3/20 18:43:00 -- 上传例子
|
||||
-- 作者:有点色 -- 发布时间:2017/3/20 19:03:00 -- Dim dt1 As DataTable = DataTables("汇总") Dim dt2 As DataTable = DataTables("手术室") Dim dt3 As DataTable = DataTables("外科") For Each dr1 As DataRow In dt2.Select("") Dim dr2 As DataRow = dt1.Find("编码 = \'" & dr1("编码") & "\'") If dr2 Is Nothing Then dr2 = dt1.addnew For Each dc As DataCol In dt2.DataCols dr2(dc.Name) = dr1(dc.name) Next dr2("数量") = dt2.Compute("sum(数量)", "编码 = \'" & dr1("编码") & "\'") + dt3.Compute("sum(数量)", "编码 = \'" & dr1("编码") & "\'") Next For Each dr1 As DataRow In dt3.Select("") Dim dr2 As DataRow = dt1.Find("编码 = \'" & dr1("编码") & "\'") If dr2 Is Nothing Then dr2 = dt1.addnew For Each dc As DataCol In dt2.DataCols dr2(dc.Name) = dr1(dc.name) Next dr2("数量") = dt2.Compute("sum(数量)", "编码 = \'" & dr1("编码") & "\'") + dt3.Compute("sum(数量)", "编码 = \'" & dr1("编码") & "\'") Next |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2017/3/20 19:19:00 -- 有点色老师 ,谢谢你的解答,请问这些代码放到哪里 我放到窗口里,做个按钮,把这些代码放到按钮里,执行后提示: .NET Framework 版本:2.0.50727.5466 Foxtable 版本:2016.7.29.1 错误所在事件:窗口,窗口1,Button1,Click 详细错误信息: 无效的聚合函数 Sum()和类型 String 的用法。 |
||||
-- 作者:有点蓝 -- 发布时间:2017/3/20 20:18:00 -- 数量列改成整型列 |
||||
-- 作者:蓝蚂蚁 -- 发布时间:2017/3/20 20:25:00 -- 多谢有点蓝老师,完美解决。大神收下我的膝盖吧 |