使用Excel公式在具有2列的表中返回唯一值

我正在寻找networking和计算器,但无法弄清楚。 =(

我的表格如下所示:

R1 U1 R1 U1 R1 U2 R1 U3 R2 U2 R2 U2 R2 U3 

是否有可能使用Excel公式返回

 R1 U1,U2, U3 R2 U2, U3 

谢谢!

数据透视表

在这里输入图像说明

据我所知,Excel中没有这样做的function。 你想要的基本上是一个VLOOKUP ,返回所有值而不是一个。

但是,您可以编写一个VBA函数来执行此操作,类似于:

 Public Function FindSeries(TRange As Range, MatchWith As String) For Each cell In TRange If cell.Value = MatchWith Then x = x & cell.Offset(0, 1).Value & ", " End If Next cell FindSeries = Left(x, (Len(x) - 2)) End Function 

你可以在这里find这个代码和更多的信息: http : //www.ozgrid.com/forum/showthread.php?t= 25239& page=1

假设您inputR1或R2的单元格是命名的范围clVal。 如果上面的数据在A1:B7的范围内,则在C1:C7中添加一个帮助列,如下所示:

 C1: =IF($A$1=clVal,B1 & ", ","") C2: =IF($A2=clVal,$C1&IF(ISERROR(FIND($B2,$C1)),B2&",",""),$C1) copy this formula down to C7. 

最后,如果有逗号的话,我们需要删掉这个逗号。 这可以用来完成

 =LEFT(C7,LEN(C7)-1*(RIGHT(C7,1)=","))