Foxtable(狐表)用户栏目专家坐堂 → 根据表A表B的数据,怎么生成表C的报表


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

主题:根据表A表B的数据,怎么生成表C的报表

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/1 12:44:00 [显示全部帖子]

Dim dtb As New DataTableBuilder("表D")
dtb.AddDef("姓名", Gettype(String), 32)
dtb.AddDef("表a", Gettype(Double))
For Each v As String In DataTables("表B").GetValues("第二列")
    dtb.AddDef(v, Gettype(Double))
Next
dtb.Build()
For Each v As String In DataTables("表A").GetValues("第一列")
    Dim dr1 As DataRow = DataTables("表D").AddNew()
    dr1("姓名") = v
    Dim sum As Double = 0
    For Each dr As DataRow In DataTables("表A").Select("第一列 = '" & v & "'")
        sum += val(dr("第二列"))
    Next
    dr1("表A") = sum
    sum = 0
    For Each dr As DataRow In DataTables("表A").Select("第一列 = '" & v & "'")
        sum += val(dr("第二列"))
    Next
    For Each vv As String In DataTables("表B").GetValues("第二列", "第一列 = '" & v & "'")
        sum = 0
        For Each dr As DataRow In DataTables("表B").Select("第一列 = '" & v & "' and 第二列 = '" & vv & "'")
            sum += val(dr("第三列"))
        Next
        dr1(vv) = sum
    Next
Next
MainTable = Tables("表D")

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/3/1 23:31:00 [显示全部帖子]

以下是引用liming730323在2017/3/1 22:53:00的发言:
最右面缺个合计,这个代码应该怎么写?

 

看懂下代码,留给你当作业。

 

循环每一列,累加每一个值,即可。


 回到顶部