相当复杂:
Dim dic As New Dictionary(of Date,List(of String))
Dim dic2 As new Dictionary(of String,Integer)
For Each dr As DataRow In DataTables("表A").DataRows
Dim dt As Date = dr("工程时间")
Dim lst As List(of String)
If dic.ContainsKey(dt) = False
lst = new List(of String)
dic.add(dt,lst)
Else
lst = dic(dt)
End If
Dim nms() As String = dr("参与员工").Split(",")
For Each nm As String In nms
If lst.Contains(nm) = False Then
lst.Add(nm)
End If
Next
Next
For Each lst As List(of String) In dic.Values
For Each nm As String In lst
If dic2.ContainsKey(nm) = False Then
dic2.Add(nm,1)
Else
dic2(nm) = dic2(nm) + 1
End If
Next
Next
For Each nm As String In dic2.Keys
output.show(nm & ":" & dic2(nm))
Next