把这段代码复制到命令窗口执行一下就行了。
Dim dt_source As DataTable = DataTables("表2")
Dim dt_target As DataTable = DataTables("表3")
dt_target.DataRows.Clear
For Each bh As String In dt_source.GetUniqueValues("", "档案编号")
Dim drs(3) As DataRow
drs(0) = dt_target.AddNew
drs(1) = dt_target.AddNew
drs(2) = dt_target.AddNew
drs(3) = dt_target.AddNew
For Each r As DataRow In drs
r("档案编号") = bh
Next
Dim count As Integer = 1
Dim xh As New Dictionary(Of String, Integer)
For Each dr As DataRow In dt_source.Select("档案编号 = '" & bh & "'")
drs(0)("顺序" & count) = dr("颜色")
drs(2)("顺序" & count) = dr("尺寸")
drs(3)("顺序" & count) = dr("机型")
If xh.ContainsKey(dr("颜色")) Then
drs(1)("顺序" & xh(dr("颜色"))) &= ";" & dr("序号")
Else
drs(1)("顺序" & count) = dr("序号")
xh.Add(dr("颜色"), count)
count += 1
End If
Next
Next
[此贴子已经被作者于2013-1-11 15:02:03编辑过]