|
 VIP學(xué)員的問題,要從科目里面提取最后1級科目、倒數(shù)第2級科目。 最后1級科目這種很常用,而倒數(shù)第2級科目這種問題很少見,當(dāng)學(xué)員提到后,盧子懵逼了很久,最后才無意間發(fā)現(xiàn)了一個(gè)新用法可以解決。=TRIM(RIGHT(SUBSTITUTE(A2,"-",REPT(" ",50)),50)) 正常情況下,要么提取首個(gè),要么提取最后,很少出現(xiàn)提取中間的情況。先來看提取全部,可以分列,也可以借助TEXTSPLIT函數(shù)。 而倒數(shù)第2居然是借助CHOOSECOLS函數(shù),將第2參數(shù)設(shè)置為-2,還是第一次知道這個(gè)函數(shù)能支持負(fù)數(shù)。=CHOOSECOLS(TEXTSPLIT(A2,"-"),-2)  在我們的認(rèn)知中,都是從左到右,第1、2、3,依次數(shù)下去,都是正數(shù)。比如返回區(qū)域第3列。 現(xiàn)在知道支持負(fù)數(shù),第3列,也是區(qū)域最后1列,也可以寫-1。

=CHOOSECOLS(TEXTSPLIT(A2,"-"),-1)  現(xiàn)在不管從左到右,還是從右到左都可以,也就是不管你要提取第幾個(gè)都可以,方便了很多。另一個(gè)學(xué)員的問題,實(shí)際比摘要的更復(fù)雜,要提取最后1個(gè)金額。 提取全部數(shù)字,可以借助REGEXP函數(shù),[0-9.]+代表數(shù)字0-9,同時(shí)包含小數(shù)點(diǎn)。 而現(xiàn)在要提取最后1個(gè)數(shù)字,也就是CHOOSECOLS函數(shù),第2參數(shù)設(shè)置為-1。=CHOOSECOLS(REGEXP(A2,"[0-9.]+"),-1)  當(dāng)然,第1個(gè)數(shù)字也行,第2參數(shù)設(shè)置為1。=CHOOSECOLS(REGEXP(A2,"[0-9.]+"),1)  其實(shí),OFFSET、TAKE等函數(shù)也支持負(fù)數(shù)。OFFSET函數(shù)引用最后3個(gè)數(shù)字。 TAKE函數(shù)引用最后3個(gè)數(shù)字。 參數(shù)支持負(fù)數(shù),看似不起眼的發(fā)現(xiàn),卻可以大大簡化公式,帶來極大的便利。
|