Foxtable(狐表)用户栏目专家坐堂 → [求助]怎么把两个表的数据合到一张表上


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

主题:[求助]怎么把两个表的数据合到一张表上

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


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

再改一下

 

Dim dt1 As DataTable = DataTables("表A")
Dim dt2 As DataTable = DataTables("表B")
For Each dr As DataRow In dt2.DataRows
    Dim filter As String = ""
    If dr("组名称") = "合计" Then
        filter = "单位 = '合计'"
    Else
        filter = "单位 = '" & dr("单位") & "' and 组名称 = '" & dr("组名称") & "'"
    End If
    Dim fdr As DataRow = dt1.Find(filter)
    If fdr IsNot Nothing Then
        For Each dc As DataCol In dt2.DataCols
            If dr.IsNull(dc.Name) AndAlso fdr.IsNull(dc.Name) = False Then
                dr(dc.Name) = fdr(dc.name)
            End If
        Next
    End If
Next


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


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

以下是引用lrh9537在2014-6-10 14:32:00的发言:
没有数据的怎么填充0

 

再改一下

 

Dim dt1 As DataTable = DataTables("表A")
Dim dt2 As DataTable = DataTables("表B")
For Each dr As DataRow In dt2.DataRows
    Dim filter As String = ""
    If dr("组名称") = "合计" Then
        filter = "单位 = '合计'"
    Else
        filter = "单位 = '" & dr("单位") & "' and 组名称 = '" & dr("组名称") & "'"
    End If
    Dim fdr As DataRow = dt1.Find(filter)
    If fdr IsNot Nothing Then
        For Each dc As DataCol In dt2.DataCols
            If dr.IsNull(dc.Name)
                If fdr.IsNull(dc.Name) = False Then
                    dr(dc.Name) = fdr(dc.name)
                Else
                    dr(dc.Name) = 0
                End If
            End If
        Next
    End If
Next


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


加好友 发短信
等级:小狐 帖子:327 积分:2825 威望:0 精华:0 注册:2012/11/16 12:19:00
[求助]怎么把两个表的数据合到一张表上  发帖心情 Post By:2014/6/10 14:36:00 [只看该作者]

OK。谢谢

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


加好友 发短信
等级:小狐 帖子:327 积分:2825 威望:0 精华:0 注册:2012/11/16 12:19:00
[求助]怎么把两个表的数据合到一张表上  发帖心情 Post By:2014/6/10 14:39:00 [只看该作者]

没有0啊

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


加好友 发短信
等级:小狐 帖子:327 积分:2825 威望:0 精华:0 注册:2012/11/16 12:19:00
[求助]怎么把两个表的数据合到一张表上  发帖心情 Post By:2014/6/10 14:42:00 [只看该作者]

表A的数据填充到表B中,在表B中如果没有数据就以0填充,加上这个条件怎么写代码?
[此贴子已经被作者于2014-6-10 14:43:18编辑过]

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


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

以下是引用lrh9537在2014-6-10 14:39:00的发言:
没有0啊

 

Dim dt1 As DataTable = DataTables("表A")
Dim dt2 As DataTable = DataTables("表B")
For Each dr As DataRow In dt2.DataRows
    Dim filter As String = ""
    If dr("组名称") = "合计" Then
        filter = "单位 = '合计'"
    Else
        filter = "单位 = '" & dr("单位") & "' and 组名称 = '" & dr("组名称") & "'"
    End If
    Dim fdr As DataRow = dt1.Find(filter)
      
    For Each dc As DataCol In dt2.DataCols
        If dr.IsNull(dc.Name) Then
            If fdr IsNot Nothing AndAlso fdr.IsNull(dc.Name) = False Then
                dr(dc.Name) = fdr(dc.name)
            Else
                dr(dc.name) = 0
            End If
        End If
    Next
Next


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


加好友 发短信
等级:小狐 帖子:327 积分:2825 威望:0 精华:0 注册:2012/11/16 12:19:00
[求助]怎么把两个表的数据合到一张表上  发帖心情 Post By:2014/6/10 14:46:00 [只看该作者]

好了,出来了,非常感谢,稍等一会还有个问题

 回到顶部
总数 17 上一页 1 2