国产迷姦播放在线观看_妓院一钑片免看黄大片_欧美成人A高清免费观看_污污污WWW精品国产网站

Excel函數(shù)應(yīng)用之文本/日期/時間函數(shù)

2015/10/19 13:38:35

所謂文本函數(shù),就是可以在公式中處理文字串的函數(shù)。例如,可以改變大小寫或確定文字串的長度;可以替換某些字符或者去除某些字符等。而日期和時間函數(shù)則可以在公式中分析和處理日期值和時間值。關(guān)于這兩類函數(shù)的列表參看附表,這里僅對一些常用的函數(shù)做簡要介紹。
一、文本函數(shù)
(一)大小寫轉(zhuǎn)換
LOWER--
將一個文字串中的所有大寫字母轉(zhuǎn)換為小寫字母。
UPPER--
將文本轉(zhuǎn)換成大寫形式。
PROPER--
將文字串的首字母及任何非字母字符之后的首字母轉(zhuǎn)換成大寫。將其余的字母轉(zhuǎn)換成小寫。
這三種函數(shù)的基本語法形式均為 函數(shù)名(text)。示例說明:
已有字符串為:pLease ComE Here! 可以看到由于輸入的不規(guī)范,這句話大小寫亂用了。
通過以上三個函數(shù)可以將文本轉(zhuǎn)換顯示樣式,使得文本變得規(guī)范。參見圖1
Lower
pLease ComE Here!= please come here!
upper
pLease ComE Here!= PLEASE COME HERE!
proper
pLease ComE Here!= Please Come Here!

 

(二)取出字符串中的部分字符


您可以使用Mid、Left、Right等函數(shù)從長字符串內(nèi)獲取一部分字符。具體語法格式為
LEFT
函數(shù):LEFT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定要由 LEFT 所提取的字符數(shù)。
MID
函數(shù):MID(text,start_num,num_chars)其中Text是包含要提取字符的文本串。Start_num是文本中要提取的第一個字符的位置。
RIGHT
函數(shù):RIGHT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定希望 RIGHT 提取的字符數(shù)。

比如,從字符串"This is an apple."分別取出字符"This"、"apple""is"的具體函數(shù)寫法為。
LEFT("This is an apple",4)=This
RIGHT("This is an apple",5)=apple
MID("This is an apple",6,2)=is

(三)去除字符串的空白
在字符串形態(tài)中,空白也是一個有效的字符,但是如果字符串中出現(xiàn)空白字符時,容易在判斷或?qū)Ρ葦?shù)據(jù)是發(fā)生錯誤,在Excel中您可以使用Trim函數(shù)清除字符串中的空白。
語法形式為:TRIM(text)其中Text為需要清除其中空格的文本。
需要注意的是,Trim函數(shù)不會清除單詞之間的單個空格,如果連這部分空格都需清除的話,建議使用替換功能。比如,從字符串"My name is Mary"中清除空格的函數(shù)寫法為:TRIM("My name is Mary")=My name is Mary

(四)字符串的比較
在數(shù)據(jù)表中經(jīng)常會比對不同的字符串,此時您可以使用EXACT函數(shù)來比較兩個字符串是否相同。該函數(shù)測試兩個字符串是否完全相同。如果它們完全相同,則返回 TRUE;否則,返回 FALSE。函數(shù) EXACT 能區(qū)分大小寫,但忽略格式上的差異。利用函數(shù) EXACT 可以測試輸入文檔內(nèi)的文字。語法形式為:EXACT(text1,text2)Text1為待比較的第一個字符串。Text2為待比較的第二個字符串。舉例說明:參見圖4
EXACT("China","china")=False

二、日期與時間函數(shù)
在數(shù)據(jù)表的處理過程中,日期與時間的函數(shù)是相當(dāng)重要的處理依據(jù)。而Excel在這方面也提供了相當(dāng)豐富的函數(shù)供大家使用。
(一)取出當(dāng)前系統(tǒng)時間/日期信息
用于取出當(dāng)前系統(tǒng)時間/日期信息的函數(shù)主要有NOW、TODAY。
語法形式均為 函數(shù)名()。
(二)取得日期/時間的部分字段值
如果需要單獨的年份、月份、日數(shù)或小時的數(shù)據(jù)時,可以使用HOUR、DAY、MONTHYEAR函數(shù)直接從日期/時間中取出需要的數(shù)據(jù)。具體示例參看圖5
比如,需要返回2001-5-30 12:30 PM的年份、月份、日數(shù)及小時數(shù),可以分別采用相應(yīng)函數(shù)實現(xiàn)。
YEAR(E5)=2001
MONTH(E5)=5
DAY(E5)=30
HOUR(E5)=12

此外還有更多有用的日期/時間函數(shù),可以查閱附表。下面我們將以一個具體的示例來說明Excel的文本函數(shù)與日期函數(shù)的用途。
三、示例:做一個美觀簡潔的人事資料分析表
1
示例說明
在如圖6所示的某公司人事資料表中,除了編號、員工姓名、身份證號碼以及參加工作時間為手工添入外,其余各項均為用函數(shù)計算所得。

在此例中我們將詳細說明如何通過函數(shù)求出:
1)自動從身份證號碼中提取出生年月、性別信息。
2)自動從參加工作時間中提取工齡信息。
2
、身份證號碼相關(guān)知識
在了解如何實現(xiàn)自動從身份證號碼中提取出生年月、性別信息之前,首先需要了解身份證號碼所代表的含義。我們知道,當(dāng)今的身份證號碼有15/18位之分。早期簽發(fā)的身份證號碼是15位的,現(xiàn)在簽發(fā)的身份證由于年份的擴展(由兩位變?yōu)樗奈唬┖湍┪布恿诵灤a,就成了18位。這兩種身份證號碼將在相當(dāng)長的一段時期內(nèi)共存。兩種身份證號碼的含義如下:
115位的身份證號碼:1~6位為地區(qū)代碼,7~8位為出生年份(2),9~10位為出生月份,11~12位為出生日期,第13~15位為順序號,并能夠判斷性別,奇數(shù)為男,偶數(shù)為女。
218位的身份證號碼:1~6位為地區(qū)代碼,7~10位為出生年份(4),11~12位為出生月份,13~14位為出生日期,第15~17位為順序號,并能夠判斷性別,奇數(shù)為男,偶數(shù)為女。18位為效驗位。
3
、 應(yīng)用函數(shù)
在此例中為了實現(xiàn)數(shù)據(jù)的自動提取,應(yīng)用了如下幾個Excel函數(shù)。
1IF函數(shù):根據(jù)邏輯表達式測試的結(jié)果,返回相應(yīng)的值。IF函數(shù)允許嵌套。
語法形式為:IFlogical_test, value_if_true,value_if_false
2CONCATENATE:將若干個文字項合并至一個文字項中。
語法形式為:CONCATENATE(text1,text2……)
3MID:從文本字符串中指定的起始位置起,返回指定長度的字符。
語法形式為:MID(text,start_num,num_chars)
4TODAY:返回計算機系統(tǒng)內(nèi)部的當(dāng)前日期。
語法形式為:TODAY()
5DATEDIF:計算兩個日期之間的天數(shù)、月數(shù)或年數(shù)。
語法形式為:DATEDIF(start_date,end_date,unit)
6VALUE:將代表數(shù)字的文字串轉(zhuǎn)換成數(shù)字。
語法形式為:VALUE(text)
7RIGHT:根據(jù)所指定的字符數(shù)返回文本串中最后一個或多個字符。
語法形式為:RIGHT(text,num_chars)
8INT:返回實數(shù)舍入后的整數(shù)值。語法形式為:INT(number)
4
、 公式寫法及解釋(以員工Andy為例說明)
說明:為避免公式中過多的嵌套,這里的身份證號碼限定為15位的。如果您看懂了公式的話,可以進行簡單的修改即可適用于18位的身份證號碼,甚至可適用于15、18兩者并存的情況。
1)根據(jù)身份證號碼求性別
=IF(VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2),"
","")
公式解釋:a. RIGHT(E4,3)用于求出身份證號碼中代表性別的數(shù)字,實際求得的為代表數(shù)字的字符串
b. VALUE(RIGHT(E4,3)
用于將上一步所得的代表數(shù)字的字符串轉(zhuǎn)換為數(shù)字
c. VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2
用于判斷這個身份證號碼是奇數(shù)還是偶數(shù),當(dāng)然你也可以用Mod函數(shù)來做出判斷。
d. =IF(VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2),"
","")及如果上述公式判斷出這個號碼是偶數(shù)時,顯示"",否則,這個號碼是奇數(shù)的話,則返回""。
2)根據(jù)身份證號碼求出生日期
=CONCATENATE("19",MID(E4,7,2),"/",MID(E4,9,2),"/",MID(E4,11,2))
公式解釋:a. MID(E4,7,2)為在身份證號碼中獲取表示年份的數(shù)字的字符串
b. MID(E4,9,2)
為在身份證號碼中獲取表示月份的數(shù)字的字符串
c. MID(E4,11,2)
為在身份證號碼中獲取表示日期的數(shù)字的字符串
d. CONCATENATE("19",MID(E4,7,2),"/",MID(E4,9,2),"/",MID(E4,11,2))
目的就是將多個字符串合并在一起顯示。
3)根據(jù)參加工作時間求年資(即工齡)
=CONCATENATE(DATEDIF(F4,TODAY(),"y"),"
",DATEDIF(F4,TODAY(),"ym"),"個月")
公式解釋:
a. TODAY()
用于求出系統(tǒng)當(dāng)前的時間
b. DATEDIF(F4,TODAY(),"y")
用于計算當(dāng)前系統(tǒng)時間與參加工作時間相差的年份
c. DATEDIF(F4,TODAY(),"ym")
用于計算當(dāng)前系統(tǒng)時間與參加工作時間相差的月份,忽略日期中的日和年。
d. =CONCATENATE(DATEDIF(F4,TODAY(),"y"),"
",DATEDIF(F4,TODAY(),"ym"),"個月")目的就是將多個字符串合并在一起顯示。
5.
其他說明
在這張人事資料表中我們還發(fā)現(xiàn),創(chuàng)建日期:31-05-2001時顯示在同一個單元格中的。這是如何實現(xiàn)的呢?難道是手工添加的嗎?不是,實際上這個日期還是變化的,它顯示的是系統(tǒng)當(dāng)前時間。這里是利用函數(shù) TODAY 和函數(shù) TEXT 一起來創(chuàng)建一條信息,該信息包含著當(dāng)前日期并將日期以"dd-mm-yyyy"的格式表示。
具體公式寫法為:="創(chuàng)建日期:"&TEXT(TODAY(),"dd-mm-yyyy")
至此,我們對于文本函數(shù)、日期與時間函數(shù)已經(jīng)有了大致的了解,同時也設(shè)想了一些應(yīng)用領(lǐng)域。相信隨著大家在這方面的不斷研究,會有更廣泛的應(yīng)用。

 

附一:文本函數(shù)

函數(shù)名

函數(shù)說明

語法

ASC

將字符串中的全角(雙字節(jié))英文字母更改為半角(單字節(jié))字符。

ASC(text)

CHAR

返回對應(yīng)于數(shù)字代碼的字符,函數(shù) CHAR 可將其他類型計算機文件中的代碼轉(zhuǎn)換為字符。

CHAR(number)

CLEAN

刪除文本中不能打印的字符。對從其他應(yīng)用程序中輸入的字符串使用 CLEAN 函數(shù),將刪除其中含有的當(dāng)前操作系統(tǒng)無法打印的字符。例如,可以刪除通常出現(xiàn)在數(shù)據(jù)文件頭部或尾部、無法打印的低級計算機代碼。

CLEAN(text)

CODE

返回文字串中第一個字符的數(shù)字代碼。返回的代碼對應(yīng)于計算機當(dāng)前使用的字符集。

CODE(text)

CONCATENATE

將若干文字串合并到一個文字串中。

CONCATENATE (text1,text2,...)

DOLLAR

依照貨幣格式將小數(shù)四舍五入到指定的位數(shù)并轉(zhuǎn)換成文字。

DOLLAR RMB(number,decimals)

EXACT

該函數(shù)測試兩個字符串是否完全相同。如果它們完全相同,則返回 TRUE;否則,返回 FALSE。函數(shù) EXACT 能區(qū)分大小寫,但忽略格式上的差異。利用函數(shù) EXACT 可以測試輸入文檔內(nèi)的文字。

EXACT(text1,text2)

FIND

FIND 用于查找其他文本串 (within_text) 內(nèi)的文本串 (find_text),并從 within_text 的首字符開始返回 find_text 的起始位置編號。

FIND(find_text,within_text,start_num)

FIXED

按指定的小數(shù)位數(shù)進行四舍五入,利用句點和逗號,以小數(shù)格式對該數(shù)設(shè)置格式,并以文字串形式返回結(jié)果。

FIXED(number,decimals,no_commas)

JIS

將字符串中的半角(單字節(jié))英文字母或片假名更改為全角(雙字節(jié))字符。

JIS(text)

LEFT

LEFT 基于所指定的字符數(shù)返回文本串中的第一個或前幾個字符。
LEFTB
基于所指定的字節(jié)數(shù)返回文本串中的第一個或前幾個字符。此函數(shù)用于雙字節(jié)字符。

LEFT(text,num_chars)
LEFTB(text,num_bytes)

LEN

LEN 返回文本串中的字符數(shù)。
LENB
返回文本串中用于代表字符的字節(jié)數(shù)。此函數(shù)用于雙字節(jié)字符。

LEN(text)
LENB(text)

LOWER

將一個文字串中的所有大寫字母轉(zhuǎn)換為小寫字母。

LOWER(text)

MID

MID 返回文本串中從指定位置開始的特定數(shù)目的字符,該數(shù)目由用戶指定。
MIDB
返回文本串中從指定位置開始的特定數(shù)目的字符,該數(shù)目由用戶指定。此函數(shù)用于雙字節(jié)字符。

MID(text,start_num,num_chars)
MIDB(text,start_num,num_bytes)

PHONETIC

提取文本串中的拼音 (furigana) 字符。

PHONETIC(reference)

PROPER

將文字串的首字母及任何非字母字符之后的首字母轉(zhuǎn)換成大寫。將其余的字母轉(zhuǎn)換成小寫。

PROPER(text)

REPLACE

REPLACE 使用其他文本串并根據(jù)所指定的字符數(shù)替換某文本串中的部分文本。
REPLACEB
使用其他文本串并根據(jù)所指定的字符數(shù)替換某文本串中的部分文本。此函數(shù)專為雙字節(jié)字符使用。

REPLACE(old_text,start_num,num_chars,new_text)
REPLACEB(old_text,start_num,num_bytes,new_text)

REPT

按照給定的次數(shù)重復(fù)顯示文本。可以通過函數(shù) REPT 來不斷地重復(fù)顯示某一文字串,對單元格進行填充。

REPT(text,number_times)

RIGHT

RIGHT 根據(jù)所指定的字符數(shù)返回文本串中最后一個或多個字符。
RIGHTB
根據(jù)所指定的字符數(shù)返回文本串中最后一個或多個字符。此函數(shù)用于雙字節(jié)字符。

RIGHT(text,num_chars)
RIGHTB(text,num_bytes)

SEARCH

SEARCH 返回從 start_num 開始首次找到特定字符或文本串的位置上特定字符的編號。使用 SEARCH 可確定字符或文本串在其他文本串中的位置,這樣就可使用 MID REPLACE 函數(shù)更改文本。
SEARCHB
也可在其他文本串 (within_text) 中查找文本串 (find_text),并返回 find_text 的起始位置編號。此結(jié)果是基于每個字符所使用的字節(jié)數(shù),并從 start_num 開始的。此函數(shù)用于雙字節(jié)字符。此外,也可使用 FINDB 在其他文本串中查找文本串。

SEARCH(find_text,within_text,start_num)
SEARCHB(find_text,within_text,start_num)

SUBSTITUTE

在文字串中用 new_text 替代 old_text。如果需要在某一文字串中替換指定的文本,請使用函數(shù) SUBSTITUTE;如果需要在某一文字串中替換指定位置處的任意文本,請使用函數(shù) REPLACE。

SUBSTITUTE(text,old_text,new_text,instance_num)

T

將數(shù)值轉(zhuǎn)換成文本。

T(value)

TEXT

將一數(shù)值轉(zhuǎn)換為按指定數(shù)字格式表示的文本。

TEXT(value,format_text)

TRIM

除了單詞之間的單個空格外,清除文本中所有的空格。在從其他應(yīng)用程序中獲取帶有不規(guī)則空格的文本時,可以使用函數(shù) TRIM。

TRIM(text)

UPPER

將文本轉(zhuǎn)換成大寫形式。

UPPER(text)

VALUE

將代表數(shù)字的文字串轉(zhuǎn)換成數(shù)字。

VALUE(text)

WIDECHAR

將單字節(jié)字符轉(zhuǎn)換為雙字節(jié)字符。

WIDECHAR(text)

YEN

使用 ¥(日圓)貨幣格式將數(shù)字轉(zhuǎn)換成文本,并對指定位置后的數(shù)字四舍五入。

YEN(number,decimals)


附二、日期與時間函數(shù)

函數(shù)名

函數(shù)說明

語法

DATE

返回代表特定日期的系列數(shù)。

DATE(year,month,day)

DATEDIF

計算兩個日期之間的天數(shù)、月數(shù)或年數(shù)。

DATEDIF(start_date,end_date,unit)

DATEVALUE

函數(shù) DATEVALUE 的主要功能是將以文字表示的日期轉(zhuǎn)換成一個系列數(shù)。

DATEVALUE(date_text)

DAY

返回以系列數(shù)表示的某日期的天數(shù),用整數(shù) 1 31 表示。

DAY(serial_number)

DAYS360

按照一年 360 天的算法(每個月以 30 天計,一年共計 12 個月),返回兩日期間相差的天數(shù)。

DAYS360(start_date,end_date,method)

EDATE

返回指定日期 (start_date) 之前或之后指定月份數(shù)的日期系列數(shù)。使用函數(shù) EDATE 可以計算與發(fā)行日處于一月中同一天的到期日的日期。

EDATE(start_date,months)

EOMONTH

返回 start-date 之前或之后指定月份中最后一天的系列數(shù)。用函數(shù) EOMONTH 可計算特定月份中最后一天的時間系列數(shù),用于證券的到期日等計算。

EOMONTH(start_date,months)

HOUR

返回時間值的小時數(shù)。即一個介于 0 (12:00 A.M.) 23 (11:00 P.M.) 之間的整數(shù)。

HOUR(serial_number)

MINUTE

返回時間值中的分鐘。即一個介于 0 59 之間的整數(shù)。

MINUTE(serial_number)

MONTH

返回以系列數(shù)表示的日期中的月份。月份是介于 1(一月)和 12(十二月)之間的整數(shù)。

MONTH(serial_number)

NETWORKDAYS

返回參數(shù) start-data end-data 之間完整的工作日數(shù)值。工作日不包括周末和專門指定的假期

NETWORKDAYS(start_date,end_date,holidays)

NOW

返回當(dāng)前日期和時間所對應(yīng)的系列數(shù)。

NOW( )

SECOND

返回時間值的秒數(shù)。返回的秒數(shù)為 0 59 之間的整數(shù)。

SECOND(serial_number)

TIME

返回某一特定時間的小數(shù)值,函數(shù) TIME 返回的小數(shù)值為從 0 0.99999999 之間的數(shù)值,代表從 0:00:00 (12:00:00 A.M) 23:59:59 (11:59:59 P.M) 之間的時間。

TIME(hour,minute,second)

TIMEVALUE

返回由文本串所代表的時間的小數(shù)值。該小數(shù)值為從 0 0.999999999 的數(shù)值,代表從 0:00:00 (12:00:00 AM) 23:59:59 (11:59:59 PM) 之間的時間。

TIMEVALUE(time_text)

TODAY

返回當(dāng)前日期的系列數(shù),系列數(shù)是 Microsoft Excel 用于日期和時間計算的日期-時間代碼。

TODAY( )

WEEKDAY

返回某日期為星期幾。默認情況下,其值為 1(星期天)到 7(星期六)之間的整數(shù)。

WEEKDAY(serial_number,return_type)

WEEKNUM

返回一個數(shù)字,該數(shù)字代表一年中的第幾周。

WEEKNUM(serial_num,return_type)

WORKDAY

返回某日期(起始日期)之前或之后相隔指定工作日的某一日期的日期值。工作日不包括周末和專門指定的假日。

WORKDAY(start_date,days,holidays)

YEAR

返回某日期的年份。返回值為 1900 9999 之間的整數(shù)。

YEAR(serial_number)

YEARFRAC

返回 start_date end_date 之間的天數(shù)占全年天數(shù)的百分比。

YEARFRAC(start_date,end_date,basis)