看起来复杂,其实:
Dim dt As DataTable
Dim dtb As New DataTableBuilder("统计")
Dim lst As New Dictionary(of String ,DataRow)
dtb.AddDef("工号", Gettype(String), 16)
dtb.AddDef("数量", Gettype(Double))
dt = dtb.Build
For Each dr1 As DataRow In DataTables("产量登记表_多值字段").DataRows
If dr1.IsNull("员工工号") = False Then
Dim nms() As String = dr1("员工工号").Split(",")
Dim v As Double = dr1("数量")/ nms.Length
For Each nm As String In nms
Dim dr2 As DataRow
If lst.ContainsKey(nm)
dr2= lst(nm)
Else
dr2 = dt.AddNew()
dr2("工号") = nm
lst.add(nm,dr2)
End If
dr2("数量") = dr2("数量") + v
Next
End If
Next
[此贴子已经被作者于2011-11-14 7:17:16编辑过]