win7系統下載
當前位置: 首頁 > 硬件軟件教程 > 詳細頁面

Excel拆分單元格與用分列與公式把一列內容拆分為兩列或三列

發布時間:2025-03-15 文章來源:xp下載站 瀏覽:

辦公軟件是指可以進行文字處理、表格制作、幻燈片制作、圖形圖像處理、簡單數據庫的處理等方面工作的軟件。目前辦公軟件朝著操作簡單化,功能細化等方向發展。辦公軟件的應用范圍很廣,大到社會統計,小到會議記錄,數字化的辦公,離不開辦公軟件的鼎力協助。另外,政府用的電子政務,稅務用的稅務系統,企業用的協同辦公軟件,這些都屬于辦公軟件。

在 Excel 中,拆分單元格有兩種方法,一種用 Excel 提供的選項拆分,另一種用快捷鍵拆分。Excel拆分單元格只能把合并后的單元格拆分,不能把一個沒有合并過的獨立單元格拆分為兩個或兩個以上。

在編輯 Excel 表格過程中,除拆分單元格外,常常還會遇到把一個單元格內容拆分到兩個或多個單元格或把一列拆分為兩列或三列甚至更多列。無論是拆分單元格內容還是拆分列,都可以用分列法和公式法;如果數據有明顯分隔符或分布均勻,可以用分列法;如果字母數字與漢字混雜不能用分列拆分,可以用公式法。

一、Excel拆分單元格

(一)方法一:選擇法

選中待拆分單元格,例如 A1 和 B1,選擇“開始”選項卡,單擊“合并后居中”右邊的黑色小倒三角,在彈出的菜單中選擇“取消合并單元格”,則 A1 和 B1 被重新分為兩個單元格;操作過程步驟,如圖1所示:

Excel拆分單元格

圖1

提示:Excel拆分單元格不像 Word 可以設置拆分為幾個,它只會根據合并單元格的數目拆分,例如合并單元格時是把兩個單元格合并為一個單元格,則拆分時自動拆分為兩;把三個單元格合并為一個單元格,拆分時自動拆分為三個,其它的以此類推。

(二)方法二:快捷鍵法

Excel拆分單元格快捷鍵為 Alt + H + M + U,操作方法為:選中 A1:C1 單元格,按住 Alt 鍵,按一次 H,按一次 M,再按一次 U,則 A1:C1 被重新拆分為三個單元格,操作過程步驟,如圖2所示:

Excel拆分單元格快捷鍵

圖2

提示:由于拆分后的單元格缺少邊框,所以看起來三個單元格依然為一個,但文字已經移到了 A1 單元格;如果要給拆分后的單元格加上邊框,可以按 Ctrl + 1 組合鍵,選擇“邊框”選項卡,點擊外邊框上的圖標,單擊“確定”即可。

二、Excel拆分單元格內容

(一)用“分列”的“分隔符”拆分

1、假如要把服裝表的“編號”列拆分為兩列。右鍵第二列頂部的 B,在彈出的菜單中選擇“插入”,則在第一列與第二列之間插入一列;單擊 A 選擇 A 列,選擇“數據”選項卡,單擊“分列”,打開“文本分列向導”窗口,“請選擇最合適的文件類型”選擇“分隔符號”,單擊“下一步”,勾選“其他”,在其右邊輸入 -,單擊“下一步”,單擊“完成”,則第一列被從短橫處拆分為兩列;操作過程步驟,如圖3所示:

Excel拆分單元格內容

圖3

2、從拆分結果可以看出,拆分后拆分符(-)沒有了,如果把一個字作為拆分符也是一樣。另外,“文本分列向導”中提供了四種拆分符,分別為“Tab鍵、分號、逗號和空格”,如果要拆分的內容以其中某個符號居多,可以選它作拆分符。

(二)用“分列”的“固定寬度”拆分,可以拆分為二列或三列以上

1、右鍵 F 列字母 F,在彈出的菜單中選擇“插入”,在 E 列右邊插入一列;選中 E 列,選擇“數據”選項卡,單擊“分列”,打開“文本分列向導”窗口,“請選擇最合適的文件類型”選擇“固定寬度”,單擊“下一步”,把鼠標移到要拆分處對應的標尺處,單擊一下,則出現一個指向標尺的箭頭,往右拖一點以使箭頭恰好處于要拆分處,單擊“下一步”,被拆分為的兩部分左邊加上黑色的背景,可以據此確認是否按要求拆分了,如果符合要求,單擊“完成”,如果不符合要求,可以單擊“上一步”繼續調整,這里已經拆分好了,單擊“完成”,則一列被拆分為兩列;操作過程步驟,如圖4所示:

Excel用分列的固定寬度拆分,可以拆分為二列或三列以上

圖4

2、如果要拆分為三列,在“文本拆分向導”窗口的“標尺處”多單擊一次就會又出現一個箭頭,其它的以此類推。“固定寬度”拆分適用于數據分布均勻對齊的列。

(三)用公式拆分,適用于數據分布不均勻的列

1、拆分列有明顯字符的實例

(1)假如要把價格列拆分為數字列與單位列。選中 G2 單元格,把公式 =LEFT(E2,FIND("元",E2)-1) 復制到 G2,按回車,返回 86.9,則E2 價格的數字被拆分到 G2,把鼠標移到 G2 右下角的單元格填充柄上,按住左鍵,往下拖,則價格列其它單元格的數字也被拆分到 G 列對應的單元格;把公式 =MID(E2,FIND("元",E2),3) 復制到 H2 單元格,按回車,則 E2 價格的單位被拆分到 H2,同樣用往下拖的方法,把價格列其它單元格的單位拆分到 H 列對應的單元格;操作過程步驟,如圖5所示:

Excel用公式拆分列,適用于數據分布不均勻的列

圖5

(2)公式說明:

A、Left函數的表達式為:=LEFT(Text, [Num_Chars]),Text 為源文本,Num_Chars 為要截取的字符數,可省略;

Find函數的表達式為:=FIND(Find_Text, Within_Text, [Start_Num]),Find_Text 為要找的文本,Within_Text 為源文本,Start_Num 為查找開始位置,可省略。

Mid函數的表達式為:=MID(Text, Start_Num, Num_Chars),Text 為源文本,Start_Num 為開始截取位置,Num_Chars 為截取字符數。

B、公式 =LEFT(E2,FIND("元",E2)-1) 用 FIND("元",E2)-1 找出“元”在文本中的位置,由于要截取到數字,所以要減 1;然后用 Left函數截取數字。

C、公式 =MID(E2,FIND("元",E2),3) 用 FIND("元",E2) 找出要截取的開始位置,然后用 Mid函數從找出的開始位置起截取 3 個字符。

2、拆分混雜的字符串實例

(1)假如要拆分由“字母數字 + 漢字 + 數字”組成的字符串為三列。選中 B1 單元格,把公式:
=LEFT(A1,LOOKUP(1,0/((LENB(MID(A1,ROW($1:$15),1))=1)*(LENB(MID(A1,ROW($2:$16),1))=2)),ROW($1:$15)))
復制到 B1,按回車,則 A1 中的內容左邊的“字母數字”被拆分到 B1 單元格;把鼠標移到 B1 右下角的單元格填充柄上,按住左鍵,往下拖一直拖到 B3 單元格,則 A2 和 A3 中的內容的“字母數字”分別被拆分到 B2 和 B3 單元格;操作過程步驟,如圖6所示:

Excel拆分單元格內容為字母數字 + 漢字 + 數字混雜的字符串實例

圖6

(2)拆分后面的數字部分。選中 D1 單元格,把公式:
=MID(A1,LOOKUP(1,0/(LENB(MID(A1,ROW($1:$15),1))=2),ROW($2:$16)),15)
復制到 D1,按回車,則 A1 中的內容右邊的“數字”被拆分到 D1 單元格;同樣用往下拖的方法把 A2 和 A3 中的內容拆分到 D2 和 D3;操作過程步驟,如圖7所示:

Excel拆分一列為三列

圖7

(3)拆分中間的漢字部分。選中 C1 單元格,把公式 =SUBSTITUTE(SUBSTITUTE(A1,B1,""),D1,"") 復制到 C1,按回車,把 A1 內容中間的“漢字部分”拆分到 C1;同樣用往下拖的方法,把 A2 和 A3 的內容的中間“漢字部分”分別拆分到 C2 和 C3;操作過程步驟,如圖8所示:

Excel把單元格數據拆分為三列

圖8

(4)公式說明:

A、拆分左邊“字母數字”的公式:
=LEFT(A1,LOOKUP(1,0/((LENB(MID(A1,ROW($1:$15),1))=1)*(LENB(MID(A1,ROW($2:$16),1))=2)),ROW($1:$15)))

① 先用 MID(A1,ROW($1:$15),1) 把 A1 中的每個文字拆分開,結果為:

{"W";"S";"-";"560";"長";"袖";"白";"襯";"衫";"8";"6";".";"9"},是怎么返回這個數組的?ROW($1:$15) 返回一個 1 到 15 的數組(15 表示 A1 中的字符總數),即 {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},Mid 每次從數組中取出一個元素作為開始截取參數,并每次截取一個字符;例如:第一次從數組中取出 1,即從第一位開始截取,截取一個字符,返回 "W";第二次從數組中取出 2,即從第二位開始截取,截取一個字符,返回 "S";以此類推直到取完數組中的所有元素。

② 則 LENB(MID(A1,ROW($1:$15),1)=1 變為 LENB({"W";"S";"-";"560";"長";"袖";"白";"襯";"衫";"8";"6";".";"9"})=1,LenB 依次從數組中取出每一個元素,并返回它們的字節數,結果變為 {1,1,1,1,1,1,2,2,2,2,2,1,1,1,1}=1,因為每個字母數字的字節數為 1,每個漢字的字節數為 2。然后再取數組中的每一個元素與 1 比較,如果等于 1,則返回 True,否則返回 False,最后返回{True,True,True,True,True,True,False,False,False,False,False,True,True,True,True}。

 

③ LENB(MID(A1,ROW($2:$16),1))=2 與 LENB(MID(A1,ROW($1:$15),1))=1 是一樣的道理,所不同的是它從第二位開始把 A1 中的每個文字拆分開,也就是舍棄第一個字,為什么要這樣拆分?LENB(MID(A1,ROW($2:$16),1))=2 返回的結果為 {1,1,1,1,1,2,2,2,2,2,1,1,1,1,0}=2,然后取出數組中的每個元素與 2 比較,如果相等,則返回 True,否則返回 False,最后返回結果{False,False,False,False,False,True,True,True,True,True,False,False,False,False,False}。

④ 至此,(LENB(MID(A1,ROW($1:$15),1))=1)*(LENB(MID(A1,ROW($2:$16),1))=2) 變為:
{True,True,True,True,True,True,False,False,False,False,False,True,True,True,True}*
{False,False,False,False,False,True,True,True,True,True,False,False,False,False,False}
接著把兩個數組對應的元素相乘,True 被轉為 1,False 被轉為 0,返回結果為:{0,0,0,0,0,1,0,0,0,0,0,0,0,0,0},即第 6 個為 1,恰好是 A1 中數字 0 與漢字“長”相交的結果。

⑤ 公式變為 =LEFT(A1,LOOKUP(1,0/({0,0,0,0,0,1,0,0,0,0,0,0,0,0,0}),ROW($1:$15))),接著用 0 除以數組中的每一個元素,公式變為:
=LEFT(A1,LOOKUP(1,{#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,0,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!},ROW($1:$15)))
只有 0 / 1 = 0,其它都返回分母為 0 錯誤(即 #DIV/0!);進一步計算 ROW($1:$15),它返回{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}。

⑥公式變為:
=LEFT(A1,LOOKUP(1,{#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,0,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!},{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}))
接著用 LookUp 在含有 #DIV/0! 的數組中查找 1,由于找不到 1,LookUp 返回小于等于 1 的最大值,所以返回第 6 個 0,然后再根據 0 在數組中的位置在 1 到 15 的數組中查找與 0 的位置(即第 6 位)對應的元素,因此返回 6。

⑦ 公式變為:=LEFT(A1,6),最后用 Left 從左邊截取 A1 中的文字左邊 6 個字符,即 WS-560。

 

B、拆分右邊部分的公式:=MID(A1,LOOKUP(1,0/(LENB(MID(A1,ROW($1:$15),1))=2),ROW($2:$16)),15)

① LENB(MID(A1,ROW($1:$15),1))=2 返回的值上面已經分析過,結果為{False,False,False,False,False,False,True,True,True,True,True,False,False,False,False},接著用 0 除以數組中的每個元素,返回結果為 {#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,0,0,0,0,0,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!}。

② ROW($2:$16) 返回 2 到 16 的數組,即 {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16},則公式變為:
=MID(A1,LOOKUP(1,{#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!,0,0,0,0,0,#DIV/0!,#DIV/0!,#DIV/0!,#DIV/0!},{2,3,4,5,6,7,8,9,10,11,12,13,14,15,16}),15)
接著用 LookUp 在含有 #DIV/0! 的數組中查找 1,由于找不到 1,所以返回小于等于 1 的最大值,又由于有 5 個 0,所以返回最后一個 0,然后根據返回 0 在數組中的位置在 2 到 16 的數組中找與 0 對應位置的值,即第 11 位的值,該值為 12。

③ 公式變為:=MID(A1,12,15),最后用 Mid 把 A1 中的文字從第 12 開始截取,共截取 15 字符,返回 A1 中的文字后面的數字 86.9。提示:Mid函數如果指定的截取字符數大于文本長度,只截取到末尾。

C、拆分中間的部分公式:=SUBSTITUTE(SUBSTITUTE(A1,B1,""),D1,"")

公式由兩個 SubStitute函數嵌套組成,里面的 SUBSTITUTE(A1,B1,"") 用于替換 B1 的內容,即用“空”替換 A1 中的 B1(用 WS-560 替換“WS-560長袖白襯衫86.9”中“WS-560”);外面的 SubStitute 用于替換 D1 的內容,經 SUBSTITUTE(A1,B1,"") 的替換,公式變為:=SUBSTITUTE("長袖白襯衫86.9",D1,""),再用“空”替換 D1 的文字(86.9),最后返回“長袖白襯衫”。

提示:公式 =SUBSTITUTE(SUBSTITUTE(A1,B1,""),D1,"")可以省略 "",即可這樣寫:=SUBSTITUTE(SUBSTITUTE(A1,B1,),D1,)。


Office辦公軟件是辦公的第一選擇,這個地球人都知道。

本文章關鍵詞: Excel 拆分 單元格   分列 公式  一列   
久久亚洲国产的中文