excel如何合併同一行內的多個單元格的電話號碼,如下所示,將圖一合併成圖二。?
使用Power Query應該是不用寫公式也不用寫代碼,簡單操作幾步就可以搞定的
請看GIF動畫演示
office2019的話,使用textjoin。如=TEXTJOIN("/",1,A2:G2)
如無textjoin,我寫了個自定義函數joinz,支持單列或單行合併。=JOINZ(A2:A7,","),自動跳過空白單元格,末尾不帶分隔符。
Function joinz(rgs As Range, delimiter As String)
Dim i, b As String: ReDim arr(1 To rgs.Count, 1 To 1): arr = rgs
For i = 1 To rgs.Count
If rgs.Columns.Count &> 1 Then b = arr(1, i) Else b = arr(i, 1): If b = "" Then b = ""
If b &<&> "" Then joinz = joinz b delimiter
Next
joinz = Left(joinz, Len(joinz) - 1)
End Function
Office 2016或Office 365版本有個新函數TEXTJOIN可以做到
=TEXTJOIN(";",,B2:K2)
新建一行,使用將個行次連在一塊不久行啦
按照剛剛知友的提示,重新試了一下新的函數,確實快捷方便
另外,第二個參數要選擇1,這樣就會忽略空格
使用對單元格進行鏈接,如果需要可以中間間隔文本
=單元格A","單元格B","單元格C
低版本沒有TEXTJOIN函數,目前想到的最笨的方法,用號鏈接
=LEFT(IF(A2="","",A2";")IF(B2="","",B2";")IF(C2="","",C2";")IF(D2="","",D2";")IF(E2="","",E2";")IF(F2="","",F2";")IF(G2="","",G2";")IF(H2="","",H2";")IF(I2="","",I2";")IF(J2="","",J2";"),LEN(IF(A2="","",A2";")IF(B2="","",B2";")IF(C2="","",C2";")IF(D2="","",D2";")IF(E2="","",E2";")IF(F2="","",F2";")IF(G2="","",G2";")IF(H2="","",H2";")IF(I2="","",I2";")IF(J2="","",J2";"))-1)
直接=B2";"C2";"D2";"E2....
如何將同一行不同列的多個單元格內容匯總到一個單元格並用「;」符號分開?這裡需求就是將符合條件的多個結果合併到一個單元格上。這種要求可以說是比較少見的,這樣對數據再處理是會造成十分困難的。但是我們可以使用TEXTJOIN函數來達到我們想要的結果。
我們要將序號1-5的行內的電話號碼匯總到一起並用【;】分開,我們輸入函數=TEXTJOIN(第一個條件用什麼分開,這裡輸入";",),第二個條件是否忽略空單元格,我們選擇1或TRUE,注意這裡如果選擇0或FALSE的話會產生很多符號。因為它將空單元格都連接在一起。第三個條件是在哪個區域連接;注意這裡的我們還要往下拉,所以列號要相對引用,以防止拖動時變亂。
最終我們輸入公式:=TEXTJOIN(";",1,"$B2:$K2)
其中:";" 是要在文本之間插入的字元(注意:文本用雙引號)1 代表TRUE,公式則忽略空單元格$B2:$K2 是要連接的區域如何用公式函數之類的批量處理?
推薦閱讀:
※如何將圖片轉成EXCEL?
※如何將一個Excel表格裡面的多個工作表中相同名稱對應的數據匯總?
※表格Excel問題,如何讓b列同步a列位置?
※如何更快匯總兩百個表格的數據?
※新手必會的八個Excel技巧,個個實用
TAG:MicrosoftExcel | Excel公式 | Excel使用 | Excel技巧 | Excel函數 |