2017-06-09 43 views

回答

1

的Excel 2016有一個稱爲TextJoin()的語法的新功能

= TextJoin(定界符,忽略空細胞,範圍)

這樣,則可以使用公式

=TEXTJOIN(",",TRUE,A1:A5) 

enter image description here

編輯後評論:這是一個在Excel 2016中的新公式。它在2010年不存在。

但是有很多用戶定義的函數(UDF)宏比Concatenate做得更好,並且可以在Excel 2010中使用。例如in this post by Jon Acampora。但是,您需要在每個想要使用該特殊功能的電子表格中使用VBA代碼,並且所有這些電子表格都需要啓用宏功能表才能使用這些特殊功能。

+1

Excel 2010的結果是什麼 –

+0

我添加了一些可以在Excel 2010中工作的更多信息 – teylyn

0

試試這個

=A1&","&A2&","&A3&","&A4 

,或者創建自定義的VBA函數

Public Function Join(rng As Range, delimiter As String) As String 
Dim cell As Range 
For Each cell In rng 
    Join = Join & cell.Text & delimiter 
Next cell 
' remove the last delimiter 
Join = Left(Join, Len(Join) - Len(delimiter)) 
End Function 
+0

我想要一個動態列凍結公式。 –

+1

@SurajKhanra「動態列凍結公式」是什麼意思?編輯你的問題並在你的問題中解釋你的要求。 – teylyn

+1

答案將像@ teylyn的答案,但我想要一個Excel 2010的公式。 –

0

對於一個長長的清單更復雜的公式但是一個「自動調整」的副本可能適合:

=IF(A2="",LEFT(B1&A2&",",LEN(B1&A2&",")-2),B1&A2&",") 

假設一行被插入在最上面的B1空白。輸出將位於行1的ColumnB中,Row1之後的ColumnA中具有第一個空白單元格。

相關問題