編者語:Excel是辦公室自動化中非常重要的一款軟件,很多巨型國際企業(yè)都是依靠Excel進行數(shù)據(jù)管理。它不僅僅能夠方便的處理表格和進行圖形分析,其更強大的功能體現(xiàn)在對數(shù)據(jù)的自動處理和計算,然而很多缺少理工科背景或是對Excel強大數(shù)據(jù)處理功能不了解的人卻難以進一步深入。編者以為,對Excel函數(shù)應用的不了解正是阻擋普通用戶完全掌握Excel的攔路虎,然而目前這一部份內容的教學文章卻又很少見,所以特別組織了這一個《Excel函數(shù)應用》系列,希望能夠對Excel進階者有所幫助!禘xcel函數(shù)應用》系列,將每周更新,逐步系統(tǒng)的介紹Excel各類函數(shù)及其應用,敬請關注! 所謂文本函數(shù),就是可以在公式中處理文字串的函數(shù)。例如,可以改變大小寫或確定文字串的長度;可以替換某些字符或者去除某些字符等。而日期和時間函數(shù)則可以在公式中分析和處理日期值和時間值。關于這兩類函數(shù)的列表參看附表,這里僅對一些常用的函數(shù)做簡要介紹。 一、文本函數(shù) (一)大小寫轉換 LOWER--將一個文字串中的所有大寫字母轉換為小寫字母。 UPPER--將文本轉換成大寫形式。 PROPER--將文字串的首字母及任何非字母字符之后的首字母轉換成大寫。將其余的字母轉換成小寫。 這三種函數(shù)的基本語法形式均為 函數(shù)名(text)。示例說明: 已有字符串為:pLease ComE Here! 可以看到由于輸入的不規(guī)范,這句話大小寫亂用了。 通過以上三個函數(shù)可以將文本轉換顯示樣式,使得文本變得規(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ù)從長字符串內獲取一部分字符。具體語法格式為 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)空白字符時,容易在判斷或對比數(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 參見圖3 在數(shù)據(jù)表中經常會比對不同的字符串,此時您可以使用EXACT函數(shù)來比較兩個字符串是否相同。該函數(shù)測試兩個字符串是否完全相同。如果它們完全相同,則返回 TRUE;否則,返回 FALSE。函數(shù) EXACT 能區(qū)分大小寫,但忽略格式上的差異。利用函數(shù) EXACT 可以測試輸入文檔內的文字。語法形式為:EXACT(text1,text2)Text1為待比較的第一個字符串。Text2為待比較的第二個字符串。舉例說明:參見圖4 EXACT("China","china")=False 在數(shù)據(jù)表的處理過程中,日期與時間的函數(shù)是相當重要的處理依據(jù)。而Excel在這方面也提供了相當豐富的函數(shù)供大家使用。 (一)取出當前系統(tǒng)時間/日期信息 用于取出當前系統(tǒng)時間/日期信息的函數(shù)主要有NOW、TODAY。 語法形式均為 函數(shù)名()。 (二)取得日期/時間的部分字段值 如果需要單獨的年份、月份、日數(shù)或小時的數(shù)據(jù)時,可以使用HOUR、DAY、MONTH、YEAR函數(shù)直接從日期/時間中取出需要的數(shù)據(jù)。具體示例參看圖5。 比如,需要返回2001-5-30 12:30 PM的年份、月份、日數(shù)及小時數(shù),可以分別采用相應函數(shù)實現(xiàn)。 YEAR(E5)=2001 MONTH(E5)=5 DAY(E5)=30 HOUR(E5)=12 三、示例:做一個美觀簡潔的人事資料分析表 1、 示例說明 在如圖6所示的某公司人事資料表中,除了編號、員工姓名、身份證號碼以及參加工作時間為手工添入外,其余各項均為用函數(shù)計算所得。 (1)自動從身份證號碼中提取出生年月、性別信息。 (2)自動從參加工作時間中提取工齡信息。 2、身份證號碼相關知識 在了解如何實現(xiàn)自動從身份證號碼中提取出生年月、性別信息之前,首先需要了解身份證號碼所代表的含義。我們知道,當今的身份證號碼有15/18位之分。早期簽發(fā)的身份證號碼是15位的,現(xiàn)在簽發(fā)的身份證由于年份的擴展(由兩位變?yōu)樗奈唬┖湍┪布恿诵灤a,就成了18位。這兩種身份證號碼將在相當長的一段時期內共存。兩種身份證號碼的含義如下: (1)15位的身份證號碼:1~6位為地區(qū)代碼,7~8位為出生年份(2位),9~10位為出生月份,11~12位為出生日期,第13~15位為順序號,并能夠判斷性別,奇數(shù)為男,偶數(shù)為女。 (2)18位的身份證號碼:1~6位為地區(qū)代碼,7~10位為出生年份(4位),11~12位為出生月份,13~14位為出生日期,第15~17位為順序號,并能夠判斷性別,奇數(shù)為男,偶數(shù)為女。18位為效驗位。 3、 應用函數(shù) 在此例中為了實現(xiàn)數(shù)據(jù)的自動提取,應用了如下幾個Excel函數(shù)。 (1)IF函數(shù):根據(jù)邏輯表達式測試的結果,返回相應的值。IF函數(shù)允許嵌套。 語法形式為:IF(logical_test, value_if_true,value_if_false) (2)CONCATENATE:將若干個文字項合并至一個文字項中。 語法形式為:CONCATENATE(text1,text2……) (3)MID:從文本字符串中指定的起始位置起,返回指定長度的字符。 語法形式為:MID(text,start_num,num_chars) (4)TODAY:返回計算機系統(tǒng)內部的當前日期。 語法形式為:TODAY() (5)DATEDIF:計算兩個日期之間的天數(shù)、月數(shù)或年數(shù)。 語法形式為:DATEDIF(start_date,end_date,unit) (6)VALUE:將代表數(shù)字的文字串轉換成數(shù)字。 語法形式為:VALUE(text) (7)RIGHT:根據(jù)所指定的字符數(shù)返回文本串中最后一個或多個字符。 語法形式為:RIGHT(text,num_chars) (8)INT:返回實數(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ù)字的字符串轉換為數(shù)字 c. VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2用于判斷這個身份證號碼是奇數(shù)還是偶數(shù),當然你也可以用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)當前的時間 b. DATEDIF(F4,TODAY(),"y")用于計算當前系統(tǒng)時間與參加工作時間相差的年份 c. DATEDIF(F4,TODAY(),"ym")用于計算當前系統(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)當前時間。這里是利用函數(shù) TODAY 和函數(shù) TEXT 一起來創(chuàng)建一條信息,該信息包含著當前日期并將日期以"dd-mm-yyyy"的格式表示。 具體公式寫法為:="創(chuàng)建日期:"&TEXT(TODAY(),"dd-mm-yyyy") 至此,我們對于文本函數(shù)、日期與時間函數(shù)已經有了大致的了解,同時也設想了一些應用領域。相信隨著大家在這方面的不斷研究,會有更廣泛的應用。 附一:文本函數(shù)
附二、日期與時間函數(shù)
|
|站長郵箱|小黑屋|手機版|Office中國/Access中國
( 粵ICP備10043721號-1 )
GMT+8, 2025-7-13 08:30 , Processed in 0.064827 second(s), 16 queries .
Powered by Discuz! X3.3
© 2001-2017 Comsenz Inc.