思路決定出路,其實就是個套路
古人學問無遺力,少壯工夫老始成。
紙上得來終覺淺,絕知此事要躬行。
--陸遊冬夜讀書示子聿
今天解答課堂上同學提出的一個問題。
如圖,需要用公式一步提取出產品的型號。
公式如下
=MIDB(B68,SEARCHB("?",B68),2*LEN(B68)-LENB(B68))
在進行公式說明之前,我們首先需要對商品名稱進行分析,我們看到所有的商品名稱都是中文名+英文數字型號的形式。
我們知道,中文在EXCEL中是佔用兩個位元組,而英文和數字是單位元組字元。
那麼我們的解題思路就是,首先通過函數找到第一個單位元組的字元的位置,也就能確定型號的第一個英文或數字的位置了。
然後再用函數計算出型號的位元組長度。
最後用函數將中間的型號部分截取出來即可。
接下來,我們來具體分解下這個函數公式的含義。
首先,我們用SEARCHB來找到第一個單位元組字元出現的位置。
SEARCHB的第一個參數輸入需要找的字元,這裡用「?」通配符代替任意的單位元組字元。
第二參數輸入需要去那個文本中查找。
第三個參數表示從第幾位開始查找,本例中默認為空,代表從第一位開始查找。
得到的結果是7,代表第一個單位元組出現在第7位。因為每個中文佔用2個字元,因此榨汁機三個中文佔用了6個字元。所以是第7位。
接下來,用LEN函數來計算商品名稱的長度。
LEN函數不區分單位元組和雙位元組,因此,計算出來的長度是8。
再用LENB計算一次商品名稱的長度。
由於LENB函數區分單雙位元組,因此結算出來的長度是11。
然後我們用2倍的LEN(B66)-LENB(B66),得到的結果恰好就是型號部分的長度,也就是單位元組字元的長度。
最後,我們用MIDB函數截取型號的部分。
MIDB函數的第一個參數,輸入需要截取的文本位置。
第二參數輸入開始截取的位置,也就是前面用SEARCHB函數計算出來的結果,第7位開始截取。
第三參數是需要截取的位數,是通過前面的2×LEN(B66)-LENB(B66)公式計算出來的結果是5位。
最後,我們將這個公式雙擊複製到底,就完成了。
本節難易度 四顆星
為了幫助大家加深理解,每期都會留下問答題,歡迎大家留言回答。
上期問題是,如何製作灰色圓角柱形。
方法如下圖,插入-圖形-圓角矩形
將矩形上的黃色標點移動中間位置即可。
本期問題是,為什麼2×LEN(B66)-LENB(B66)的結果就正好等於型號(單位元組)部分的長度呢。
成功在於嘗試,練習一下,互動一下,才能正真掌握哦。
如果覺得本文內容對大家有所幫助的話,還請不吝讚賞,您的支持是我不斷創作的動力。
點擊展開全文
TAG:721轉化塾 |