-
1 # 簡淨軒語
-
2 # 考拉的凝視
按題主的意思是,合併以後所有資料都要保留,那麼常規的合併單元格等方式就不適用了。
下面我來分享一下幾種方法。
一、利用連結符"&"進行拼接
用法:="字串1"&"字串2"&...&"字串N"。
優點:適用於少量資料的拼接,靈活、易理解。
缺點:資料越多越麻煩。
實際操作如下圖所示:
當然,實際應用中多數情況下是需要加分隔符的,如下圖所示:
二、利用CONCATENATE函式進行拼接
用法:=CONCATENATE(text1, [text2], ...),text指的是需要連線的字元。
優點:適用於少量資料的拼接,聯接項可以是文字、數字、單元格引用或這些項的組合。
缺點:資料越多越麻煩,最多可將255個文字字串合併為一個文字字串。
實際操作如下圖所示:
加分隔符的操作演示:
三、利用CONCAT函式進行拼接
用法:=CONCAT(文字1,[文字2],...)。
優點:可快速選定區域進行合併。
缺點:比上述兩種方法稍微複雜。
普通區域合併:=CONCAT(B2:B5)。
加分隔符合並區域:=CONCAT(B2:B5&";"),注:此公式是陣列公式,需要按<Ctrl+Shift+Enter>組合鍵結束。
四、利用TEXTJOIN函式進行拼接
用法:=TEXTJOIN(分隔符,是否忽略空白單元格,文字1,[文字2],...)。
分隔符:每個文字之間的分隔,需用英文狀態的雙引號引起來。
是否忽略空白單元格:TRUE(忽略空白單元格);FALSE(包括空白單元格)。
優點:能夠快速的將目標區域的單元格內容(可忽略空白)用分隔符連線起來。
缺點:沒有缺點!強烈推薦!!!
-
3 # Excel大全
多行合併為一行,在日常工作中還是比較常見的,這裡我就分享兩種方法給大家:
利用填充功能合併多行;
複製貼上法;
利用剪貼簿合併多行;
PHONETIC函式合併多行;
01 填充方法步驟如下:
調整單元格寬度至合適位置;
選單開始,填充,內容重排;
02 複製貼上方法步驟:
選擇需要合併的行;
複製;
雙擊目標單元格,進入編輯模式;
貼上;
03 剪下板方法步驟如下:
開啟剪貼簿;
複製需要合併的多行;
04 PHONETIC函式方法輸入公式:=Phonetic(區域),表示合併區域成字串;
-
4 # 套路Excel
猜測題主的意思可能是一維錶轉置二維表。(幾行合併為一行)
一、函式解法:
此種情況,好多人首先想到的就是用index+small+if萬金油公式。
=IFERROR(INDEX($B$1:$B$7,SMALL(IF($A$1:$A$7=$E2,ROW($1:$7),9^9),COLUMN(A1))),""),陣列公式,Ctrl+Shift+Enter三鍵一起按。
但本人在實際中,更推薦用輔助列的方法來解決這個問題。輔助列更加高效靈活。
輔助列公式:=A2&COUNTIF(A$2:A2,A2)
引用公式:=IFERROR(INDEX($B$2:$B$7,MATCH($E2&COLUMN(C1),$C$2:$C$7,0),),"")
二、輔助列+powerquery轉置,一次性轉置所有資料。
輔助列公式為:=COUNTIF(A$2:A2,A2)
具體操作見下面的Gif,關鍵操作為:透視列--不要聚合。
powerquery程式碼為,將下面程式碼放到檢視--高階編輯器中即可代替上面的gif操作,直接得出結果。
let
源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
更改的型別 = Table.TransformColumnTypes(源,{{"姓名", type text}, {"專案", type text}, {"輔助列", Int64.Type}}),
已透視列 = Table.Pivot(Table.TransformColumnTypes(更改的型別, {{"輔助列", type text}}, "zh-CN"), List.Distinct(Table.TransformColumnTypes(更改的型別, {{"輔助列", type text}}, "zh-CN")[輔助列]), "輔助列", "專案")
in
已透視列
三、純powerquery一次性轉置。
關鍵操作為分組,使用Text.Combine函式,詳見下面Gif:
pq程式碼為:
let
源 = Excel.CurrentWorkbook(){[Name="表3"]}[Content],
更改的型別 = Table.TransformColumnTypes(源,{{"姓名", type text}, {"專案", type text}}),
分組的行 = Table.Group(更改的型別, {"姓名"}, {{"計數", each Text.Combine([專案],",")}}),
按分隔符拆分列 = Table.SplitColumn(分組的行, "計數", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"計數.1", "計數.2", "計數.3"}),
更改的型別1 = Table.TransformColumnTypes(按分隔符拆分列,{{"計數.1", type text}, {"計數.2", type text}, {"計數.3", type text}})
in
更改的型別1
pq程式碼使用操作演示如下gif:
四、若題主的意思是其他幾位的答案,將多個內容合併在一個單元格內。可以參考本人的回答,個人認為本人的更加實用。連結為:
https://www.wukong.com/question/6575017816804557070/
-
5 # EXCEL學習微課堂
在EXCEL中,如何把幾行的資料合併成一行?如果是簡單的把幾行或幾列固定的資料合併,最好的辦法就是用快速填充法和函式TEXTJOIN,前者的老師已有介紹,不再細說。
我理解的應該是將表中符合條件的資料合併成一行,最簡單的辦法就是用自定義函式解決,又快又簡單,這裡介紹一個自定義函式vlookups,下面看看它是如何將符合條件的幾行資料合併成一行的。
一、vlookups自定義函式介紹
這個函式與vlookup類似,但他有兩大明顯的特點:一是可以從右向左查詢,二是能返回多個結果。
二、關鍵提示
要用vlookups第1個關鍵:記得一定要先匯入模組再使用這個函式,這個函式是自定義函式,不包含在Excel預設的函數里。匯入模組的方法是:按快捷鍵Alt+F11,開啟工程視窗→【匯入檔案】→選擇模組檔案(自定義函式vlookups.bas)→【開啟】→關閉VBA 編輯器。
要用vlookups第2個關鍵:記得儲存EXCEL檔案為啟用宏的工作簿.xlsm,要不你用vlookups函式查找出結果後要立即複製原址貼上為值,下次開啟檔案時就不會出錯。
三、一對多查詢部門員工
G3 單元格公式為:=vlookups($F3,$C:$C,0,G$2)
Vlookups與VLOOKUP類似,有4個引數:vlookups(找誰,在哪找,返回第幾列,找第幾個)
第①引數是要查詢的內容【部門】「物資部」
第②引數是包含查詢值的資料列—C列
第④引數引用第2行的數,即一個連續的序號,向右向下複製,即可實現一對多查詢。將各部門的員工都查詢出來。
四、一對多查詢部門辦公室
G15單元格公式為:=vlookups($F15,$C:$C,2,G$14)
第①引數是要查詢的內容,【部門】「物資部」
第②引數是包含查詢值的資料列,—C列
第④引數引用第14行的數,即一個連續的序號,向右向下複製,即可實現一對多查詢。
如果要從右向左查詢【序號】,只要修改一下第三引數,使其變成-1即可。
五、合併查找出來符合條件的同行多個單元格資料到一個單元格
用TEXTJOIN函式合併,函式有4個引數:
TEXTJOIN(分隔符, 是否包含空值, text1, [text2], …)
案例中L3單元格公式=TEXTJOIN("/",TRUE,G3:K3)
第①引數是用什麼分隔符,分隔符用/
第②引數是否包含空值用TRUE,包含用案例中不包含用FALSE或0,不包含用TRUE 或1
如需自定義函式vlookups的VBA程式碼模組檔案,請關注、評論、轉發後私信聯絡我。關於vlookups函式和vlookup函式的具體用法可檢視具體教程“比Vlookup好用10倍的自定義函式VLOOKUPS,解決VLOOKUP的難題!”https://www.toutiao.com/i6576726290076795400/
回覆列表
解決這個問題可以用函式,也可以用office剪貼簿。函式用PHONETIC函式,具體看影片演示。
1、函式法:
2、用office剪貼簿也是非常快速的,具體看影片演示:
當然用CONCATENATE函式或者用&連線符都可以實現將多行或者多列資料合併,但從操作上來說,不如以上兩個方法簡便。