2016-04-26 72 views
0

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? –

回答

0

在從芯片皮爾遜大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裏。 –

相關問題