Hi,
Maybe this
Copy the function below to a standard module
Code:
Function aconcat(a As Variant, Optional sep As String = "") As String
' Harlan Grove, Mar 2002
Dim y As Variant
If TypeOf a Is Range Then
For Each y In a.Cells
aconcat = aconcat & y.Value & sep
Next y
ElseIf IsArray(a) Then
For Each y In a
aconcat = aconcat & y & sep
Next y
Else
aconcat = aconcat & a & sep
End If
aconcat = Left(aconcat, Len(aconcat) - Len(sep))
End Function
A G
<table style="width: 204pt; border-collapse: collapse;" border="0" cellpadding="0" cellspacing="0" width="272"><colgroup><col style="width: 48pt;" width="64"><col style="width: 156pt;" width="208"></colgroup><tbody><tr style="height: 15pt;" height="20"><td style="border: 0.5pt solid windowtext; background-color: rgb(197, 217, 241); width: 48pt; height: 15pt;" class="xl66" height="20" width="64">
DC</td><td style="border-width: 0.5pt 0.5pt 0.5pt medium; border-style: solid solid solid none; border-color: windowtext; background-color: rgb(197, 217, 241); width: 156pt;" class="xl67" width="208">
Market</td></tr><tr style="height: 15pt;" height="20"><td style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; background-color: transparent; height: 15pt;" class="xl65" align="right" height="20">
7</td><td style="border-width: medium 0.5pt 0.5pt medium; border-style: none solid solid none; border-color: windowtext; background-color: transparent;" class="xl65">
Coop1(5); Coop9(30); Coop7(19)</td></tr><tr style="height: 15pt;" height="20"><td style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; background-color: transparent; height: 15pt;" class="xl65" align="right" height="20">
8</td><td style="border-width: medium 0.5pt 0.5pt medium; border-style: none solid solid none; border-color: windowtext; background-color: transparent;" class="xl65">
</td></tr><tr style="height: 15pt;" height="20"><td style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; background-color: transparent; height: 15pt;" class="xl65" align="right" height="20">
14</td><td style="border-width: medium 0.5pt 0.5pt medium; border-style: none solid solid none; border-color: windowtext; background-color: transparent;" class="xl65">
Coop1(20); Coop5(60)</td></tr><tr style="height: 15pt;" height="20"><td style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; background-color: transparent; height: 15pt;" class="xl65" align="right" height="20">
15</td><td style="border-width: medium 0.5pt 0.5pt medium; border-style: none solid solid none; border-color: windowtext; background-color: transparent;" class="xl65">
Coop2(30)</td></tr><tr style="height: 15pt;" height="20"><td style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; background-color: transparent; height: 15pt;" class="xl65" align="right" height="20">
20</td><td style="border-width: medium 0.5pt 0.5pt medium; border-style: none solid solid none; border-color: windowtext; background-color: transparent;" class="xl65">
Coop3(45)</td></tr><tr style="height: 15pt;" height="20"><td style="border-width: medium 0.5pt 0.5pt; border-style: none solid solid; border-color: windowtext; background-color: transparent; height: 15pt;" class="xl65" align="right" height="20">
21</td><td style="border-width: medium 0.5pt 0.5pt medium; border-style: none solid solid none; border-color: windowtext; background-color: transparent;" class="xl65">
Coop4(55)</td></tr></tbody></table>
formula in G2
=SUBSTITUTE(ACONCAT(IF($U$2:$U$9=A2,"; "&$V$2:$V$9&"("&$W$2:$W$9&")","")),"; ","",1)
confirmed with
CTRL+SHIFT+ENTER simultaneously (not just Enter)
Excel wraps the formula with curly-braces { }
copy down
HTH
M.