ネットとstackoverflowを検索していましたが、それを把握できませんでした。 =(Excelの式を使用して2つの列を持つテーブル内の一意の値を返します。
私のシートは、次のようになります!
R1 U1
R1 U1
R1 U2
R1 U3
R2 U2
R2 U2
R2 U3
が
R1 U1,U2, U3
R2 U2, U3
おかげ
ネットとstackoverflowを検索していましたが、それを把握できませんでした。 =(Excelの式を使用して2つの列を持つテーブル内の一意の値を返します。
私のシートは、次のようになります!
R1 U1
R1 U1
R1 U2
R1 U3
R2 U2
R2 U2
R2 U3
が
R1 U1,U2, U3
R2 U2, U3
おかげ
ピボットテーブル
は、私の知る限りでは、何も存在し返さないためにExcelの数式を使用することが可能ですあなたが望んでいるのは基本的には1つではなくすべての値を返す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
R1または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)=","))