王志軍
實(shí)際工作中,有時(shí)會(huì)遭遇一些比較稀奇古怪的問題,例如圖1所示的數(shù)據(jù),看起來十分的紊亂,領(lǐng)導(dǎo)要求從B列提取出手機(jī)號(hào)碼,由于實(shí)際的數(shù)據(jù)源比較大,手工提取顯然是不太現(xiàn)實(shí),有沒有更好的處理方式呢?
方案一:利用VLOOKUP函數(shù)
由于手機(jī)號(hào)碼都是11位的數(shù)字,因此可以利用公式進(jìn)行提取。選擇C2單元格,在編輯欄輸入公式“=VLOOKUP(0,MID(B2,ROW($1:$99),11)*{0,1},2,0)”,按“Ctrl+Shift+Enter”組合鍵轉(zhuǎn)換為數(shù)組公式,在這里對(duì)上述公式分幾個(gè)部分進(jìn)行講解:
ROW($1:$99):利用ROW函數(shù)得到1~99的序號(hào),以此作為MID函數(shù)的第二參數(shù)。
MID(B2,ROW($1:$99),11):MID函數(shù)依次從B2的第1、2、3、4......直至99個(gè)位置,提取長(zhǎng)度為11位的字符,然后分別乘以0和1,即常量數(shù)組{0,1}。如果MID函數(shù)的結(jié)果為文本,乘以{0,1}后,結(jié)果為錯(cuò)誤值{#VALUE!,#VALUE!};如果MID函數(shù)的結(jié)果為數(shù)值,可建立一個(gè)2列99行的內(nèi)存數(shù)組,作為VLOOKUP函數(shù)的查詢區(qū)域。
VLOOKUP:用0作為查找值,采用精確匹配的方式,在以上內(nèi)存數(shù)組的第一列查詢首個(gè)0出現(xiàn)的位置,并且返回相對(duì)應(yīng)的內(nèi)存數(shù)組第二列的結(jié)果。
公式執(zhí)行之后向下拖曳填充柄,很快就可以看到如圖2所示的提取結(jié)果。
方案二:利用自動(dòng)填充
如果你的Excel是2016或更高版本,那么可以利用“自動(dòng)填充”完成提取任務(wù)。選擇C2單元格,在編輯欄手工輸入相應(yīng)的手機(jī)號(hào)碼,繼續(xù)在C3單元格手工輸入手機(jī)號(hào)碼,直至看到如圖3所示的填充建議,此時(shí)只要直接按下回車鍵就可以了。