最近咱們一直更新文本函數(shù),今天也不例外。今天說的文本函數(shù)是rept,它的意思是根據(jù)指定次數(shù)重復文本。 -01- 函數(shù)說明 REPT 函數(shù)語法結(jié)構(gòu)如下,有2個參數(shù)。 REPT(text, number_times)
它的注意事項:
-02- 示例解釋 如下圖所示,A列是一些字符串,在B1單元格輸入公式=REPT(A1,3),向下拖動,得到B列的結(jié)果。意思是將A1單元格的字符串重復3次。就這么簡單。 你可能會問這個函數(shù)有什么用呢?其實它還是挺有用的,看下面的實列。 -03- 具體應用 1.根據(jù)分數(shù)段判斷星級 a.下圖左表是一些人的分數(shù),現(xiàn)在要求根據(jù)右表的不同分數(shù)等級來判斷每個人的星級。小于60分,0顆星;大于等于60分,1顆星;...大于等于100分,5顆星。在C8單元格中輸入公式=REPT("★",IF(B8<50,,B8/10-5)),向下拖動。 IF(B8<50,,B8/10-5)作為rept的第2參數(shù),用來條件判斷,小于50分的,返回0;否則返回分數(shù)/10-5。用分數(shù)除以10,相當于將分數(shù)縮小10倍,再減去5剛好是我們要重復的次數(shù)。 b.還是這個題,只不過這次的星級用下圖的形式表現(xiàn),有實心和空心兩種星星。在C17單元格中輸入公式=REPT("★",IF(B17<50,,B17/10-5))&REPT("☆",5-IF(B17<50,,INT(B17/10-5))),向下拖動。 這個公式用了2個rept,第1個rept返回實心★的個數(shù),第2個rept用來返回空心☆的個數(shù)。中間用連字符&連起來就可以了。比如以黃蓉的95分為例,第1個rept返回實心4顆星,第2個rept返回空心5-4顆星。 這里用到了int向下取整這個函數(shù),比如int(1.5)返回1。以后我會更新的。 2.改變數(shù)字的形式 A列是一些數(shù)字,要將它改為B列的形式。這里我給出3種方法,但我只講1種,其他2種你自己看。在B29單元格種輸入公式=LEFT(TEXT(A29,REPT("0-",LEN(A29))),2*LEN(A29)-1),向下拖動。 你可以看到這個公式用了好幾個函數(shù)。left,rept,len我們都學過了,只有text沒有學過。text后面也會講到的。 REPT("0-",LEN(A29))這部分的意思是,A29單元格有8個字符,rept就將"0-"重復8次,就形成"0-0-0-0-0-0-0-0-"。 TEXT(A29,REPT("0-",LEN(A29)))將A29中的數(shù)字放到"0-0-0-0-0-0-0-0-"對應的0上,就形成"5-6-4-5-6-4-5-6-"。這樣最后面多出1個“-”。 最后用left給提取出來,提取的位數(shù)為2*LEN(A29)-1,整個公式就拆解完了。 其他2種方法的公式為C29=SUBSTITUTE(TEXT(A29,REPT("0-",LEN(A29))),"-",,LEN(A29))。 D29=REPLACE(TEXT(A29,REPT("0-",LEN(A29))),2*LEN(A29),1,)。 rept函數(shù)很簡單,但從這2個列子中你可能會發(fā)現(xiàn),和其他函數(shù)結(jié)合運用,rept也能發(fā)揮它的強大作用。所以,把幾個簡單的函數(shù)結(jié)合起來靈活運用是不容易的,只要你運用的好,說不定就能發(fā)現(xiàn)不一樣的神奇用法。 如果對你有幫助或者你喜歡的話,請幫我轉(zhuǎn)發(fā)或者打賞,你的支持就是我最大的動力! |
|