Excel中文本函數(shù)參數(shù)較少,易學(xué)易用,比如Left、Right闹啦、Mid函數(shù)等,但是有一個(gè)非常強(qiáng)大的文本函數(shù)咕娄,就是因?yàn)閰?shù)少加上看起來很簡單被我們低估了亥揖。
它就是函數(shù)中的戰(zhàn)斗機(jī)、函數(shù)中的“萬金油”Text函數(shù)圣勒。
(1)Text函數(shù)的基本用法
text函數(shù)的語法:text(value,format_text)费变,其中:Value為數(shù)字值,F(xiàn)ormat_text 為設(shè)置單元格格式中自己所要選用的文本格式圣贸。
簡單來說挚歧,Text函數(shù)最主要的功能就是將數(shù)值轉(zhuǎn)換成文本。
因此需要注意吁峻,Text函數(shù)產(chǎn)生的結(jié)果一定要文本滑负,是無法參與計(jì)算的。
舉例來說:在工作中我們經(jīng)秤煤可以看到一些文本格式的日期矮慕,在Excel中這樣的日期是不規(guī)范的,也不能直接作為日期參與計(jì)算啄骇。因此為了方便統(tǒng)計(jì)與分析痴鳄,我們需要將文本日期轉(zhuǎn)換為真正的日期。
在B2單元格中輸入公式=--TEXT(A2,"#-00-00")
將B列單元格格式更改為日期格式缸夹,即可完成操作痪寻。
這里需要注意的是螺句,直接修改A列的單元格格式為日期格式或者直接轉(zhuǎn)化為數(shù)字均是無法成為規(guī)范的日期格式的。
在這種情況下橡类,Text的作用就凸顯出現(xiàn)了蛇尚。
(2)提取身份證號碼中的性別和出生日期
在上周分享的文章(http://mp.weixin.qq.com/s/bB768aMEGHbOHK5fCZi8EA)中,我們知道身份證號碼是文本格式的顾画,要想從文本格式中提取數(shù)字信息需要利用Text函數(shù)進(jìn)行轉(zhuǎn)換取劫。
在15位身份證號碼中,最后一位表示性別亲雪,男性為奇數(shù)勇凭,女性為偶數(shù)。18位身份證號碼中义辕,倒數(shù)第二位表示性別,同樣是男性為奇數(shù)寓盗,女性為偶數(shù)灌砖。
公式=TEXT(MOD(MID(B2,15,3),2),"男;;女")
公式解析:MID(B2,15,3)表示提取15身份證號碼中的最后一位,提取18位身份證號碼中的第15傀蚌、16基显、17位;MOD(MID(B2,15,3),2)判斷奇偶善炫;TEXT(MOD(MID(B2,15,3),2),"男;;女")余數(shù)為正數(shù)顯示“男”撩幽,余數(shù)為負(fù)數(shù)顯示空,余數(shù)為0則顯示“女”箩艺。
注意:這里Text表示四種數(shù)據(jù)類型窜醉,常用方法為=text(數(shù)據(jù),"正;負(fù);零;文本")
不管是15位身份證號碼還是18位身份證號碼,出生日期都是從第7位開始的艺谆,區(qū)別是15位少了“19”榨惰,例如B4的出生日期是“690626”,即1969年06月26日静汤。
公式=--TEXT((LEN(B2)=15)*19&MID(B2,7,6+(LEN(B2)=18)*2),"0-00-00")
公式解析:(LEN(B2)=15)*19琅催,如果身份證號碼為15位,則結(jié)果為1*19=19虫给,如果身份證號碼不是15位藤抡,則結(jié)果為0*19=0。
MID(B2,7,6+(LEN(B2)=18)*2)從身份證號碼的第7位開始取值抹估,如果為18位缠黍,那么截取的位數(shù)就=6+1*2=8,如果為15位棋蚌,那么截取的位數(shù)就是6+0*2=6嫁佳。剛好實(shí)現(xiàn)了18位截取8位挨队、15位截取6位的目的。
15位最后的結(jié)果:19與截取的6位合并蒿往,例如A4單元格盛垦,19690626。
18位最后的結(jié)果:0與截取的8位合并瓤漏,例如A2單元格腾夯,019870623。
TEXT((LEN(B2)=15)*19&MID(B2,7,6+(LEN(B2)=18)*2),"0-00-00")將字符串19690626轉(zhuǎn)變?yōu)?969-06-26這樣的格式蔬充,再通過--負(fù)負(fù)得正的運(yùn)算將文本字符轉(zhuǎn)換為日期字符蝶俱。
最后再通過設(shè)置單元格格式,將數(shù)字格式設(shè)置為日期饥漫,最后年月日就計(jì)算出來了榨呆。
(3)格式化員工工號
由于公司重組合并,需要對員工工號進(jìn)行升級庸队,不足8位的需要在工號前補(bǔ)0升成8位积蜻,升級后的工號前還需要有其所屬的部門。
公式=A2&TEXT(B2,"00000000")
公式解析:TEXT(B2,"00000000")將原始工號升級為8位數(shù)的工號彻消。
A2&TEXT(B2,"00000000")將部門名稱與8位數(shù)工號合并竿拆。
(4)阿拉伯?dāng)?shù)字轉(zhuǎn)換為中文大小寫數(shù)字
在實(shí)際工作中,我們可能會遇到需要把數(shù)字表示的年宾尚、月丙笋、日轉(zhuǎn)換為中文的年、月煌贴、日御板,例如2017年轉(zhuǎn)換為“二〇一七年”或“貳零壹柒年”。
公式解析:[DBNum1]是中文小寫格式崔步,[DBNum2]是中文大寫格式稳吮。
[DBNum1]后面加0表示讓數(shù)字逐位顯示。
加0與不加0區(qū)別如下:
還有一種是大小寫金額的轉(zhuǎn)換井濒,在工作中也非常常見灶似。
公式=TEXT(A11*100,"[DBNum2]0億0仟0佰0拾0萬0仟0佰0拾0元0角0分")
(5)累計(jì)加班時(shí)間
下圖為某員工上半月每天的加班時(shí)長,現(xiàn)需要計(jì)算加班總時(shí)長瑞你。如果使用公式=SUM(B2:B16)得出來的結(jié)果為18:35(實(shí)際為42:35)酪惭,顯然是錯(cuò)誤的。
這是因?yàn)閱卧褡詣影殉^24小時(shí)的時(shí)間進(jìn)位到天了者甲,而結(jié)果只顯示小于24小時(shí)的時(shí)間春感。
所以,我們需要借助Text公式=TEXT(SUM(B2:B16),"[h]:mm"),阻止單元格自動把超過24小時(shí)的時(shí)間進(jìn)位到天鲫懒,只以時(shí)間累計(jì)嫩实。
(6)自動判斷盈虧、評定等級
一提到盈虧窥岩、等級甲献,可能很多首先想到的是IF函數(shù),其次是LOOKUP函數(shù)颂翼,其實(shí)Text函數(shù)也可以判斷盈虧晃洒、評定等級。
公式=TEXT(B2,"[>90]!優(yōu)秀;[<80]!不及格;及格")
可以用=text(數(shù)據(jù),"正;負(fù);零;文本")判斷盈虧朦乏,公式=TEXT(B2,"增加¥0元;減少¥0元;持平;缺崗")
(7)與SUM函數(shù)組合使用
現(xiàn)有公司3月份和4月份每天的銷售額球及,需要計(jì)算3月和4月份的銷售總額。
在E3單元格輸入公式=SUM((TEXT($A$2:$A$21,"YYYYMM")=TEXT(D3,"YYYYMM"))*$B$2:$B$21)
同時(shí)按下ctrl+shift+enter鍵呻疹,得到3月份的銷售總額吃引。
公式解析:TEXT($A$2:$A$21,"YYYYMM")是將日期單元格轉(zhuǎn)化為“201703”和“201704”的形式。TEXT(D3,"YYYYMM")也是將2017年3月轉(zhuǎn)換為“201703”诲宇。
如果TEXT($A$2:$A$21,"YYYYMM")和TEXT(D3,"YYYYMM")相等的話(同時(shí)為201703)际歼,則返回值為1,否則返回值為0姑蓝。
SUM((TEXT($A$2:$A$21,"YYYYMM")=TEXT(D3,"YYYYMM"))*$B$2:$B$21)是對所有返回值為1所對應(yīng)的B列銷售額進(jìn)行求和。
今天的教程就到這里了吕粗。
怎么樣纺荧?有沒有Get到新技能?Get了就自動打賞轉(zhuǎn)發(fā)吧颅筋。