葛東林 山東省泰安市泰安第一中學(xué)
日常工作與辦公中,經(jīng)常需要對(duì)一些字符串或者文字分割,以便取出需要的內(nèi)容,如果手工分割,不但費(fèi)時(shí)費(fèi)力,而且效率太低,尤其是對(duì)于大量需要分割的字符串來說,手工分割幾乎不可取,excel中封裝了眾多函數(shù),其中就有一些用于字符串操作的函數(shù),通過使用excel中的字符串相關(guān)的函數(shù)可以快速高效地對(duì)字符串進(jìn)行分割,給日常工作需要帶來了極大的便利[1][2][3]。
與字符串分割相關(guān)的幾個(gè)函數(shù)主要有以幾個(gè):LEFT(),RIGHT(),MID(),F(xiàn)IND(),LEN(),IFERROR(), 下 面 對(duì)其使用分別介紹[4][5][6]。
LEFT從文本字符串的第一個(gè)字符開始返回指定個(gè)數(shù)的字符。語法
LEFT(text,[num_chars]),該函數(shù)語法具有下列參數(shù):
Text必需。包含要提取的字符的文本字符串。
num_chars可選。指定要由LEFT提取的字符的數(shù)量。
Num_chars必須大于或等于零。
如果num_chars大于文本長度,則LEFT返回全部文本。
如果省略num_chars,則假定其值為1。
示例:LEFT
圖1 left函數(shù)使用
如上圖,在A1中輸入morning單詞,在B1中輸入=left(A1,4)按回車鍵,則·B2中得到的結(jié)果為morn四個(gè)字母。
Excel中的MID函數(shù)可以用來從指定的字符串中截取出指定數(shù)量字符的函數(shù)。MID函數(shù)的形式如下:MID(text,start_num,num_chars),其中:、
text是一串我們想從中截取字符的“字符串“。
start_num是一個(gè)數(shù)字,是指從“字符串”的左邊第幾位開始截取。
num_chars也是數(shù)字,是指從start_num開始,向右截取的長度。
圖2 mid函數(shù)使用
如圖2所示,在A1中輸入student單詞,在B1中輸入=mid(A1,2,3)按回車鍵,則·B2中得到的結(jié)果為tud三個(gè)字母。
right函數(shù)語法:
right(text,num_chars)
其中text表示要截取的字符串。
num_chars表示截取的字符的數(shù)量。
圖3 right函數(shù)使用
如圖3所示,在A1中輸入student單詞,在B1中輸入=right(A1,2)按回車鍵,則·B2中得到的結(jié)果為nt兩個(gè)字母。
find函數(shù)在excel中是一個(gè)很常見的函數(shù),此函數(shù)是一個(gè)查找函數(shù),用于查找某一個(gè)字符在單元格中的位置,所以find函數(shù)返回一個(gè)位置序列號(hào)(數(shù)字)。FIND函數(shù)在excel中很少單獨(dú)使用,一般會(huì)和其他函數(shù)結(jié)合在一起使用,起到定位作用。find函數(shù)語法為:
FIND(find_text,within_text,start_num)
其中:
Find_text表示我們要查找的字符串,
within_text表示要查找的區(qū)域,
start_num指定開始進(jìn)行查找的字符數(shù)。比如start_num為2,則從單元格內(nèi)第2個(gè)字符開始查找關(guān)鍵字。如果忽略start_num,則默認(rèn)為1。
圖4 find函數(shù)使用
如圖4所示,在A1中輸入student單詞,在B1中輸入=FIND("u",A1,2)按回車鍵,則·B2中得到的結(jié)果為3。
len函數(shù)是計(jì)數(shù)字符串中所有字符的個(gè)數(shù)。
語法:
LEN(text)
LLEN函數(shù)語法具有下列參數(shù):
Text必需。要查找其長度的文本。空格將作為字符進(jìn)行計(jì)數(shù)。
圖5 len函數(shù)使用
如圖5所示,在A1中輸入student單詞,在B1中輸入=LEN(A1)按回車鍵,則·B2中得到的結(jié)果為7。
下面以一組行政區(qū)劃字符串為例介紹如何綜合運(yùn)用相關(guān)函數(shù)分割出用戶需要的字符串。如圖6所示,表格中為B2列為沒有分隔的行政區(qū)劃,現(xiàn)在需要按照省、市、縣、鄉(xiāng)為單位把“行政區(qū)劃”列中的字符串分開,并填寫到C、D、E、F列中(圖7所示)。
圖6 待分割字行政區(qū)劃符串
圖7 分割要求
像這樣的工作如果數(shù)據(jù)少的話可以手工分割,但是如果把全國實(shí)際區(qū)劃從excel表中分割(到鄉(xiāng)鎮(zhèn)),光數(shù)據(jù)就有幾萬條,顯然手工分割不可取,這是可以根據(jù)數(shù)據(jù)的實(shí)際情況,用excel中的相關(guān)函數(shù)進(jìn)行批量分割,從而達(dá)到快速分割字符的目的。
分析表中的數(shù)據(jù),省級(jí)區(qū)劃中有省、市、區(qū)三類;地市級(jí)區(qū)劃中有市、區(qū)、盟、州幾類;縣級(jí)區(qū)劃中有縣、市、區(qū)、旗幾種;而鄉(xiāng)鎮(zhèn)的區(qū)劃名稱就更多。
如圖8所示,在C2單元格里輸入:
=LEFT(B2,IFERROR(FIND("省 ",B2,1),F(xiàn)IND("市 ",B2,1)))回車,既可以把北京市取出來,然后把鼠標(biāo)放在C2單元格右下角,出現(xiàn)黑十字圖標(biāo)時(shí),按住鼠標(biāo)左鍵往下拖動(dòng)到16行,既可以把其他行的省級(jí)行政區(qū)劃取出來。然后把光標(biāo)定到C17單元格,輸入:=LEFT(B17,IFERROR(FIND("區(qū) ",B17,1),F(xiàn)IND("省",B17,1))),同樣方法鼠標(biāo)放到右下角出現(xiàn)黑十字時(shí)左鍵拖動(dòng)下拉到結(jié)束,即可把自治區(qū)與剩余省份取出來,如圖9所示。
圖9 省級(jí)區(qū)劃分割結(jié)果
如圖7所示,對(duì)D2-D6,由于沒有地市級(jí)劃分,不用處理。在D7中輸入:=MID(B7,F(xiàn)IND("省",B7,1)+1,(FIND("市",B7,1)-FIND("省",B7,1))),然后鼠標(biāo)放在該單元格右下角,出現(xiàn)黑十字時(shí)按住鼠標(biāo)左鍵往下拖動(dòng)到D16,則即可完成地市區(qū)劃分割;同樣方法,在D17單元格輸入:=MID(B17,F(xiàn)IND("區(qū) ",B17,1)+1,(FIND(" 市 ",B17,1)-FIND(" 區(qū) ",B17,1))),同樣方法下拉到D19;在D20單元格輸入:=MID(B20,F(xiàn)IND("區(qū) ",B20,1)+1,(FIND("盟 ",B20,1)-FIND("區(qū) ",B20,1)))下拉到D21;在D22D單元格中輸入:=MID(B22,F(xiàn)IND("省 ",B22,1)+1,(FIND("州 ",B22,1)-FIND("省 ",B22,1))),下拉到D23,便可將地市區(qū)劃分割出來,如圖10所示。
圖10 地市級(jí)區(qū)劃分割結(jié)果
類似方法,在E2單元格輸入:=MID(B2,F(xiàn)IND("市",B2,1)+1,(IFERROR(FIND(" 縣 ",B2,1),F(xiàn)IND(" 區(qū) ",B2,1))-FIND("市",B2,1))),下拉到E6。在E7單元格輸入:=MID(B7,F(xiàn)IND(" 市 ",B7,1)+1,(IFERROR(FIND(" 區(qū) ",B7,(FIND(" 市 ",B7,1)+1)),IFERROR(FIND(" 縣 ",B7,(FIND("市 ",B7,1)+1)),F(xiàn)IND("市 ",B7,(FIND("市 ",B7,1)+1))))-FIND("市 ",B7,1))),下拉到 E16。.在 E17 單元格輸入:=MID(B17,F(xiàn)IND("市",B17,1)+1,F(xiàn)IND("區(qū)",B17,F(xiàn)IND("市 ",B17,1)+1)-FIND("市 ",B17,1)), 下 拉到E18。在E19單元格輸入:=MID(B19,F(xiàn)IND("市",B19,1)+1,F(xiàn)IND("旗 ",B19,F(xiàn)IND("市 ",B19,1)+1)-FIND("市",B19,1))。 在 E20輸 入:=MID(B20,F(xiàn)IND("盟 ",B20,1)+1,((FIND("旗 ",B20,1))-FIND("盟 ",B20,1))), 下 拉到 E21。在 E22輸入:=MID(B22,F(xiàn)IND("州 ",B22,1)+1,(FIND("縣",B22,1))-FIND("州",B22,1)),下拉到E23完成所有縣級(jí)區(qū)劃分割。如圖11所示。
圖11 縣級(jí)區(qū)劃分割結(jié)果
以F7為例,在該單元格中輸入:=RIGHT(B7,LEN(B7)-FIND("區(qū) ",B7,F(xiàn)IND("市 ",B7,1)+1)), 便 可把鄉(xiāng)鎮(zhèn)區(qū)劃分離出來,如果輸入:=RIGHT(B7,(LEN(B7)-IFERROR(FIND("區(qū) ",B7,(FIND("市 ",B7,1)+1)),IFERROR(FIND("縣 ",B7,(FIND("市 ",B7,1)+1)),F(xiàn)IND("市",B7,(FIND("市",B7,1)+1)))))),然后用前面類似的方法下拉到F16,便可以一次全部分割出F7到F16的所有鄉(xiāng)鎮(zhèn)區(qū)劃。用類似的辦法可以把其他鄉(xiāng)鎮(zhèn)區(qū)劃分割出來,最終結(jié)果如圖12所示。
圖12 鄉(xiāng)鎮(zhèn)區(qū)劃分割結(jié)果
Excel中內(nèi)置了大量的函數(shù),利用其中部分函數(shù)的組合可以從較復(fù)雜的字符串中分割出用戶需要的字符串或者字符,然后利用Excel的批量處理功能達(dá)到對(duì)字符串進(jìn)行快速高效處理的目的。本文詳細(xì)介紹了excel中LEFT、RIGHT、MID、IFERROR、FIND、LEN等幾個(gè)常用函數(shù)的使用以及如何利用他們從行政區(qū)劃字符串中把各級(jí)行政區(qū)劃分割開來的方法,讀者可以舉一反三,通過文章中介紹的處理類似問題的方法解決其他工作中遇到的類似問題,從而達(dá)到提高工作效率,減輕工作量的目的。
[1]賈小軍,童小素.辦公自動(dòng)化高級(jí)應(yīng)用(Office2010)[M].北京:北京郵電大學(xué)出版社,2015.
[2]葛平俱,孫永香.大學(xué)計(jì)算機(jī)實(shí)踐教程[M].北京:人民郵電出版社,2017.
[3]雷凌.Office2010高級(jí)應(yīng)用案例解讀教程[M].北京:北京郵電大學(xué)出版社,2015.
[4]黃少玲.探析Excel函數(shù)在數(shù)據(jù)處理中的應(yīng)用[J].電腦編程技巧與維護(hù),2017,(05):58-60.
[5]王華偉,楊云.Excel函數(shù)在中職教務(wù)管理中的應(yīng)用技巧[J].電腦知識(shí)與技術(shù),2015,11(25):96-98.
[6]陳順立.基于EXCEL函數(shù)應(yīng)用的工資管理案例分析與實(shí)踐[J].電腦學(xué)習(xí),2010,(03):121-124.