我試圖在某些單元格爲空白時將行中單元格的文本串起來。我也想用逗號分隔每個單元格中的文本,但不知道如何在單元格中存在數據時只輸入逗號。帶空白單元格的字符串文本
我已經嘗試使用連接的變體並使用文本串A1 & B1 & C1但沒有任何內容以我想要的格式返回數據。
是否有嵌套公式的組合我可以使用它將以我想要的格式返回數據?
我試圖在某些單元格爲空白時將行中單元格的文本串起來。我也想用逗號分隔每個單元格中的文本,但不知道如何在單元格中存在數據時只輸入逗號。帶空白單元格的字符串文本
我已經嘗試使用連接的變體並使用文本串A1 & B1 & C1但沒有任何內容以我想要的格式返回數據。
是否有嵌套公式的組合我可以使用它將以我想要的格式返回數據?
下面的公式可以做到這一點。連接val修剪將從兩端刪除空格,並且替換將交換逗號(空格)的空間。
= SUBSTITUTE(TRIM(A1 & 「」 & B1 & 「」 & C1 & 「」 & D1) 「」, 「」)從下面的評論
編輯 - 你可以更新之間的空間引號是任何不出現在單元格中的字符。你只需要替代公式來匹配。如果你不使用|字符,例如:
= SUBSTITUTE(TRIM(A1 & 「|」 & B1 & 「|」 & C1 & 「|」 & D1), 「|」, 「」)
我試過這個公式,但我的一些數據每個單元有多個單詞,這個公式在每個單元格內有空格的地方插入逗號。任何修補程序? –
除了「&」之間的「」之外,您可以使用任何不出現在文本中的字符 - 只需替換空格即可。同時替換倒數第二段的空格。例如,如果您不使用任何\或*字符,則您的公式可能如下所示: = SUBSTITUTE(TRIM(A1&「\」&B1&「\」&C1&「\」&D1), 「」,「」,「) 或 = SUBSTITUTE(TRIM(A1&」*「&B1&」*「&C1&」*「&D1),」*「,」,「) – BamAlmighty
這裏的一個VBA溶液我有更新的版本:
Public Function JOINCELLS(ByVal ref As Range) As String
Dim c As Range
For Each c In ref
If Len(c) > 0 Then
JOINCELLS = JOINCELLS & c & ", "
End If
Next
JOINCELLS = Left(JOINCELLS, Len(JOINCELLS) - 2)
End Function
然後,它只是=JOINCELLS(A1:D1)
。
您使用的是什麼版本的Excel?在2016年,您可以['TextJoin()'](https://support.office.com/en-us/article/TEXTJOIN-function-357b449a-ec91-49d0-80c3-0e8fc845691c):'= TEXTJOIN(「 ,「,TRUE,[range])' – BruceWayne
我正在使用Excel 2013,因此textjoin公式不適用於我。 –