如何根据Excel中的另一列获取并连接一列中的值

如何根据Excel中的另一列获取并连接一列中的值

问题描述:

Excel在这里击败了我一天。如何根据Excel中的另一列获取并连接一列中的值

我有这个表:

+---+--------+--------+--------+--------+ 
| | A | B | C | D | 
+---+--------+--------+--------+--------+ 
| 1 | AGE | EX# | DG1 | DG2 | 
+---+--------+--------+--------+--------+ 
| 2 | 19 | C01 | ASC |  | 
+---+--------+--------+--------+--------+ 
| 3 | 45 | C02 | ATR |  | 
+---+--------+--------+--------+--------+ 
| 4 | 27 | C03 | LSI |  | 
+---+--------+--------+--------+--------+ 
| 5 | 15 | C04 | LSI |  | 
+---+--------+--------+--------+--------+ 
| 6 | 49 | C05 | ASC | AGC | 
+---+--------+--------+--------+--------+ 
| 7 | 76 | C06 | AGC |  | 
+---+--------+--------+--------+--------+ 
| 8 | 33 | C07 | ASC |  | 
+---+--------+--------+--------+--------+ 
| 9 | 17 | C08 | LSI |  | 
+---+--------+--------+--------+--------+ 

现在,我需要创建一个新表基于这些数据,有一行和一列,我会弥补A列,需要一个公式来填补柱B:

+----+--------+---------------+ 
| | A |  B  | 
+--=-+--------+---------------+ 
| | DG |  AGE  | 
+--=-+--------+---------------+ 
| 10 | AGC |  49, 76 | 
+----+--------+---------------+ 
| 11 | ASC | 19, 33, 49 | 
+----+--------+---------------+ 
| 12 | ATR |  45  | 
+----+--------+---------------+ 
| 13 | LSI | 15, 17, 27 | 
+----+--------+---------------+ 

所以我需要一个公式来检查第一表的列C和d为每个分布式电源,并且检查每一个在列A的年龄,然后串联匹配与一个小区的所有值a,作为分隔符。

任何人都可以帮助我吗?

感谢

+0

你有最新的Office 365? –

在从芯片皮尔逊大Excel的网站,我发现自定义函数:StringConcat。只需将代码复制粘贴到VBA模块中即可。

类似于下面的公式(单元格B10中的&填充)应该适合您。这是一个数组公式(犯了[CTRL移进入]

=StringConcat(", ",IF(Sheet1!$B$2:$C$100=A10,Sheet1!$A$2:$A$100,"")) 

你得偏离方向调整范围。

+1

FWIW在Excel二零一六年,是现在是一个本地公式,TEXTJOIN()就是这样做的,所以我对OP的问题一直没有回答2个小时 –

+0

我在我的桌面版excel 2016中找不到函数TEXTJOIN()。与办公室365版本一起来过,还是我错过了一个更新? –

+0

对不起,它在办公室365里。 –