王志軍
同事前來(lái)求助,如圖1所示,A列的每個(gè)單元格中都有三個(gè)數(shù)字,她希望在B列從小到大重排A列的三個(gè)數(shù)字。由于實(shí)際的數(shù)據(jù)量比較大,手工重排顯然是相當(dāng)麻煩,有沒(méi)有簡(jiǎn)單一些的實(shí)現(xiàn)方法呢?
我們可以借助公式完成這一重排任務(wù),選擇B1甲元格,在編輯欄輸入‘'=SUBSTITUTE(SUMI,RODUCTCSMALU--MID(A1,{1,2,3),1),{1,2,3))*10-{1,2,3})"O")”,這里的MID函數(shù)可以從文本字符串中指定的起始位置起返同指定長(zhǎng)度的字符,SMALL函數(shù)可以返同第k個(gè)最小值,SUMPRODUCT函數(shù)可以返同相應(yīng)的數(shù)組或區(qū)域乘積的和,最后再利用SUBSTITUTE函數(shù)完成字符的替換,公式執(zhí)行之后向下拖曳或雙擊填充柄,很陜就可以看到圖2所示的重排效果。
如果是Excel 2016或更高版本,那么可以使用公式“=一-TE XTJ OIN(“”,,SMALL(一一MID(AI,{1,2,3),1),{1,2,3}))”,這里的TEXTJOIN函數(shù)可以使用分隔符連接列表或文本字符串區(qū)域,但圖3所示的效果不是很好,例如“700”變成了“7“而不是“007”,這就需要進(jìn)行后期處理,操作稍麻煩一些。