Get all against unique value in row

In general the case looks like a groupBy Scenario / Filter case

A strategy would be adapted depending on what you want to to with. One of many options is to group the rows by name and then package it
e.g. List(Of List(of Datarow)) - outer List: Groups, inner List: the corresponding group members

Assign Activity:
Groups | DataType: List(Of List(of Datarow)) =

(From d In YourDataTableVar.AsEnumerable
Group d By k=d("Name").toString.Trim Into grp = Group
Select g = grp.ToList).toList

A variation of this is to return a list of datatables | 1 DataTable = 1 Group and its members

Assign Activity:
TableList| DataType: List(Of DataTable) =

(From d In YourDataTableVar.AsEnumerable
Group d By k=d("Name").toString.Trim Into grp = Group
Select t = grp.CopyToDataTable).toList