以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  两表条件合并数据  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=107336)

--  作者:恒隆君
--  发布时间:2017/9/26 10:32:00
--  两表条件合并数据
以下功能如何实现

表A

列一      列二
A           T1,T2
B           T4
C           T7
D           T2

表B
列一      列二         
B           T5,T11
C           T9,T21
D           T30
E           T37,T51,T55,T67

以列一的名称为条件,合并列二的值。
如:

B     T4,T5,T11

[此贴子已经被作者于2017/9/26 10:32:47编辑过]

--  作者:有点甜
--  发布时间:2017/9/26 10:41:00
--  
For Each dr As DataRow in datatables("表A").select("")
    For Each cdr As DataRow In DataTables("表B").Select("第一列 = \'" & dr("第一列") & "\'")
        Dim ls As new List(Of String)
        if cdr("第二列") <> nothing then ls.AddRange(cdr("第二列").split(","))
        For Each s As String In dr("第二列").split(",")
            If ls.contains(s) = False Then
                ls.add(s)
            End If
        Next
        cdr("第二列") = String.Join(",", ls.ToArray)
    Next
Next