今天和大家分享的幾條函數公式,一個比一個燒腦,但又非常實用。因為燒腦,所以計算原理和過程我們就不解釋了。因為實用,所以建議大家收藏,用到的時候可以直接拿去套用。
具體操作如下:
1、文本格式的時間轉換,燒腦指數★
如下圖所示,將A列的文本時間轉換成分鐘。
B2公式:=SUM(("0"&TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"分鐘","/1440"),"小時","/24"&REPT("",99)),"天","/1"&REPT("",99)),{0,1,2}*99+1,99))))*1440
2、數據模糊匹配,燒腦指數★★
如下圖所示,需要根據D:E列的數據,計算A裡人名的性別。需要注意的是,D列的人名和A列的人名並非完全對應,例如看見星光和看星光。
B2公式:=INDEX(E:E,MATCH(,MMULT(-ISERR(FIND(MID(D$1:D$5,COLUMN(A:X),1),A2)),ROW($1:$24)),))
3、 數字小寫轉大寫,燒腦指數★★★
Excel自帶的小寫轉換大寫的自定義格式,或者函數,都無法處理角和分的問題。
B2數組公式:=SUBSTITUTE(SUBSTITUTE(IF(-RMB(A2,2),TEXT(A2,";負")&TEXT(INT(ABS(A2)+0.5%),"[dbnum2]G/通用格式元;;")&TEXT(RIGHT(RMB(A2,2),2),"[dbnum2]0角0分;;整"),),"零角",IF(A2^2<1,,"零")),"零分","整")
4、提取單元格內數值,燒腦指數★★★★
如下圖所示,需要將A列數據中的數值提取到B列,數值的分布很零散,基本無規律可循。
B2數組公式:=MID(SUM(MID("01"&A2,1+LARGE(ISNUMBER(MID(1&A2,ROW($1:$48),1))*ROW($1:$48),ROW($1:$18)),1)*10^ROW($2:$19))%,2,100)
說明:但該公式只能正確提取15個數值,超過15位……還是用自定義函數吧。
代碼如下:
Function Getnum(rg As Range)
Dim reg As Object
Set reg = CreateObject("VBScript.RegExp")
With reg
.Global = True
.Pattern = "[^0-9]"
End With
Getnum = reg.Replace(rg.Value, "")
End Function
5、單元格內數值求和,燒腦指數★★★★★
如下圖所示,需要將A列混合文本中的數值部分在B列匯總求和。
B2數組公式:=SUM(TEXT(LEFT(TEXT(MID(A2&"a",COLUMN($2:$2),ROW($1:$15)),),ROW($1:$15)-1),"0;-0;0;!0")*ISERR(-MID(A2,COLUMN($2:$2)-1,2)))
上面五個實用技巧,公式雖然複雜但是很實用。如有不懂之處,歡迎大家留言討論。
期待你的關注和轉發分享,更多精彩內容在持續更新中.............
往期精彩文章:
電腦桌面太亂,Excel可以快速整理電腦文件,你值得學習!
要想學好excel,這幾個技巧不得不掌握!