close

小夥伴們好啊,今天咱們分享一個數據整理的實用技巧,看看如何把混合在同一單元格中的姓名拆分成一列。

先看數據源和最終效果:

遠古青年:

D2單元格輸入公式,下拉到出現空白為止。

太長了,左右拖動滑塊,可查看完整公式~~

=TRIM(MID(SUBSTITUTE(B$2&"、"&B$3&"、"&B$4&"、"&B$5&"、"&B$6&"、"&B$7&"、"&B$8&"、"&B$9,"、",REPT(" ",199)),ROW(A1)*199-198,199))

公式的意思是先把各個單元格中的字符連接到一起,然後將每個間隔符「頓號」都替換成199個空格,這樣就相當於拉大了各個姓名之間的間隔距離(和排隊做核酸類似,越遠越好~~)

然後使用MID函數在第1、第199、第398……個字符處,提取出199個字符。這些字符是包含姓名和多餘空格的,所以最後用TRIM函數去掉多餘空格。

這個公式的缺點就是太長了,數據行數多了還可能會出問題,優點是可以在任意Excel版本中使用。

近代青年:

單擊數據區域任意單元格,在【數據】選項卡下單擊【來自表格/區域】,將數據加載到數據查詢編輯器里。

右鍵刪除部門列(如有需要可保留)。

單擊姓名列,選擇【拆分列】→【按分隔符】,此時Excel會自動分析咱們的數據,並給出拆分建議。

選擇【高級選項】→【拆分到行】

最後【關閉並上載】到工作表里。

此方法適合在Excel 2016及以上版本中使用,使用2010、2013版本的小夥伴,通過安裝Power Query插件也可以實現。

現代青年:

D2單元格輸入以下公式,按回車:

=TEXTSPLIT(CONCAT(B2:B9&"、"),,"、")

這個公式簡單明了,而且運算效率高。美中不足的是目前僅允許安裝了Office 365並且加入Office 預覽體驗計劃的小夥伴使用。

TEXTSPLIT函數的作用是按照特定的分隔符拆分字符串。

寫法是這樣的:

TEXTSPLIT(文本,列分隔符,[行分隔符],[是否忽略空值],[填充文本])。

本例中省略了最後兩個參數。

先使用CONCAT(B2:B9&"、"),把B2:B9單元格的內容連接到一起,每個單元格之間用逗號隔開,得到的結果作為待拆分的字符串。

然後使用TEXTSPLIT函數將連接後的字符串按頓號拆分成一列顯示。

如果希望將數據拆分成一行顯示,公式可以換成這樣:

=TEXTSPLIT(CONCAT(B2:B9&"、"),"、")

走你青年:

李秘書,你來一下……

好了,今天的內容就是這些吧,祝大家一天好心情~~

圖文製作:祝洪忠

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()