小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Excel應用技巧之雜錦Excel

 楓葉飄飛 2007-12-25

 

Excel應用技巧之雜錦Excel

2007-12-25

編者語:Excel是辦公室自動化中非常重要的一款軟件,很多巨型國際企業(yè)都是依靠Excel進行數據管理。它不僅僅能夠方便的處理表格和進行圖形分析,其更強大的功能體現在對數據的自動處理和計算,然而很多缺少理工科背景或是對Excel強大數據處理功能不了解的人卻難以進一步深入。編者以為,對Excel函數應用的不了解正是阻擋普通用戶完全掌握Excel的攔路虎,然而目前這一部份內容的教學文章卻又很少見,所以特別組織了這一個《Excel函數應用》系列,希望能夠對Excel進階者有所幫助?!禘xcel函數應用》系列,將每周更新,逐步系統(tǒng)的介紹Excel各類函數及其應用,敬請關注!

所謂文本函數,就是可以在公式中處理文字串的函數。例如,可以改變大小寫或確定文字串的長度;可以替換某些字符或者去除某些字符等。而日期和時間函數則可以在公式中分析和處理日期值和時間值。關于這兩類函數的列表參看附表,這里僅對一些常用的函數做簡要介紹。

一、文本函數

(一)大小寫轉換

LOWER--將一個文字串中的所有大寫字母轉換為小寫字母。

UPPER--將文本轉換成大寫形式。

PROPER--將文字串的首字母及任何非字母字符之后的首字母轉換成大寫。將其余的字母轉換成小寫。

這三種函數的基本語法形式均為 函數名(text)。示例說明:

已有字符串為:pLease ComE Here! 可以看到由于輸入的不規(guī)范,這句話大小寫亂用了。

通過以上三個函數可以將文本轉換顯示樣式,使得文本變得規(guī)范。

Lower(pLease ComE Here!)= please come here!

upper(pLease ComE Here!)= PLEASE COME HERE!

proper(pLease ComE Here!)= Please Come Here! 
 
圖1

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

Excel函數應用回顧 
● Excel函數應用之邏輯函數 
● Excel函數應用之數學和三角函數 
● Excel函數應用之函數簡介 

 
您可以使用Mid、Left、Right等函數從長字符串內獲取一部分字符。具體語法格式為

LEFT函數:LEFT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定要由 LEFT 所提取的字符數。

MID函數:MID(text,start_num,num_chars)其中Text是包含要提取字符的文本串。Start_num是文本中要提取的第一個字符的位置。

RIGHT函數:RIGHT(text,num_chars)其中Text是包含要提取字符的文本串。Num_chars指定希望 RIGHT 提取的字符數。

比如,從字符串"This is an apple."分別取出字符"This"、"apple"、"is"的具體函數寫法為。

LEFT("This is an apple",4)=This

RIGHT("This is an apple",5)=apple

MID("This is an apple",6,2)=is 
 
圖2

(三)去除字符串的空白

在字符串形態(tài)中,空白也是一個有效的字符,但是如果字符串中出現空白字符時,容易在判斷或對比數據是發(fā)生錯誤,在Excel中您可以使用Trim函數清除字符串中的空白。

語法形式為:TRIM(text)其中Text為需要清除其中空格的文本。

需要注意的是,Trim函數不會清除單詞之間的單個空格,如果連這部分空格都需清除的話,建議使用替換功能。比如,從字符串"My name is Mary"中清除空格的函數寫法為:TRIM("My name is Mary")=My name is Mary 參見圖3 
 
圖3

(四)字符串的比較

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

EXACT("China","china")=False 

二、日期與時間函數

在數據表的處理過程中,日期與時間的函數是相當重要的處理依據。而Excel在這方面也提供了相當豐富的函數供大家使用。

(一)取出當前系統(tǒng)時間/日期信息

用于取出當前系統(tǒng)時間/日期信息的函數主要有NOW、TODAY。

語法形式均為 函數名()。

(二)取得日期/時間的部分字段值

如果需要單獨的年份、月份、日數或小時的數據時,可以使用HOUR、DAY、MONTH、YEAR函數直接從日期/時間中取出需要的數據。具體示例參看圖5。

比如,需要返回2001-5-30 12:30 PM的年份、月份、日數及小時數,可以分別采用相應函數實現。

YEAR(E5)=2001

MONTH(E5)=5

DAY(E5)=30

HOUR(E5)=12 
 
圖5

此外還有更多有用的日期/時間函數,可以查閱附表。下面我們將以一個具體的示例來說明Excel的文本函數與日期函數的用途。

三、示例:做一個美觀簡潔的人事資料分析表

1、 示例說明

在如圖6所示的某公司人事資料表中,除了編號、員工姓名、身份證號碼以及參加工作時間為手工添入外,其余各項均為用函數計算所得。 
 
圖6

在此例中我們將詳細說明如何通過函數求出:

(1)自動從身份證號碼中提取出生年月、性別信息。

(2)自動從參加工作時間中提取工齡信息。

2、身份證號碼相關知識

在了解如何實現自動從身份證號碼中提取出生年月、性別信息之前,首先需要了解身份證號碼所代表的含義。我們知道,當今的身份證號碼有15/18位之分。早期簽發(fā)的身份證號碼是15位的,現在簽發(fā)的身份證由于年份的擴展(由兩位變?yōu)樗奈唬┖湍┪布恿诵灤a,就成了18位。這兩種身份證號碼將在相當長的一段時期內共存。兩種身份證號碼的含義如下:

(1)15位的身份證號碼:1~6位為地區(qū)代碼,7~8位為出生年份(2位),9~10位為出生月份,11~12位為出生日期,第13~15位為順序號,并能夠判斷性別,奇數為男,偶數為女。

(2)18位的身份證號碼:1~6位為地區(qū)代碼,7~10位為出生年份(4位),11~12位為出生月份,13~14位為出生日期,第15~17位為順序號,并能夠判斷性別,奇數為男,偶數為女。18位為效驗位。

3、 應用函數

在此例中為了實現數據的自動提取,應用了如下幾個Excel函數。

(1)IF函數:根據邏輯表達式測試的結果,返回相應的值。IF函數允許嵌套。

語法形式為: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:計算兩個日期之間的天數、月數或年數。

語法形式為:DATEDIF(start_date,end_date,unit)

(6)VALUE:將代表數字的文字串轉換成數字。

語法形式為:VALUE(text)

(7)RIGHT:根據所指定的字符數返回文本串中最后一個或多個字符。

語法形式為:RIGHT(text,num_chars)

(8)INT:返回實數舍入后的整數值。語法形式為:INT(number)

 

4、 公式寫法及解釋(以員工Andy為例說明)

說明:為避免公式中過多的嵌套,這里的身份證號碼限定為15位的。如果您看懂了公式的話,可以進行簡單的修改即可適用于18位的身份證號碼,甚至可適用于15、18兩者并存的情況。

(1)根據身份證號碼求性別

=IF(VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2),"女","男")

公式解釋:a. RIGHT(E4,3)用于求出身份證號碼中代表性別的數字,實際求得的為代表數字的字符串

b. VALUE(RIGHT(E4,3)用于將上一步所得的代表數字的字符串轉換為數字

c. VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2用于判斷這個身份證號碼是奇數還是偶數,當然你也可以用Mod函數來做出判斷。

d. =IF(VALUE(RIGHT(E4,3))/2=INT(VALUE(RIGHT(E4,3))/2),"女","男")及如果上述公式判斷出這個號碼是偶數時,顯示"女",否則,這個號碼是奇數的話,則返回"男"。



(2)根據身份證號碼求出生日期

=CONCATENATE("19",MID(E4,7,2),"/",MID(E4,9,2),"/",MID(E4,11,2))

公式解釋:a. MID(E4,7,2)為在身份證號碼中獲取表示年份的數字的字符串

b. MID(E4,9,2) 為在身份證號碼中獲取表示月份的數字的字符串

c. MID(E4,11,2) 為在身份證號碼中獲取表示日期的數字的字符串

d. CONCATENATE("19",MID(E4,7,2),"/",MID(E4,9,2),"/",MID(E4,11,2))目的就是將多個字符串合并在一起顯示。

(3)根據參加工作時間求年資(即工齡)

=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ā)現,創(chuàng)建日期:31-05-2001時顯示在同一個單元格中的。這是如何實現的呢?難道是手工添加的嗎?不是,實際上這個日期還是變化的,它顯示的是系統(tǒng)當前時間。這里是利用函數 TODAY 和函數 TEXT 一起來創(chuàng)建一條信息,該信息包含著當前日期并將日期以"dd-mm-yyyy"的格式表示。

具體公式寫法為:="創(chuàng)建日期:"&TEXT(TODAY(),"dd-mm-yyyy")

至此,我們對于文本函數、日期與時間函數已經有了大致的了解,同時也設想了一些應用領域。相信隨著大家在這方面的不斷研究,會有更廣泛的應用。

附一:文本函數

函數名 函數說明 語法 
ASC 將字符串中的全角(雙字節(jié))英文字母更改為半角(單字節(jié))字符。 ASC(text) 
CHAR 返回對應于數字代碼的字符,函數 CHAR 可將其他類型計算機文件中的代碼轉換為字符。 CHAR(number) 
CLEAN 刪除文本中不能打印的字符。對從其他應用程序中輸入的字符串使用 CLEAN 函數,將刪除其中含有的當前操作系統(tǒng)無法打印的字符。例如,可以刪除通常出現在數據文件頭部或尾部、無法打印的低級計算機代碼。 CLEAN(text) 
CODE 返回文字串中第一個字符的數字代碼。返回的代碼對應于計算機當前使用的字符集。 CODE(text) 
CONCATENATE 將若干文字串合并到一個文字串中。 CONCATENATE (text1,text2,...) 
DOLLAR 依照貨幣格式將小數四舍五入到指定的位數并轉換成文字。 DOLLAR 或 RMB(number,decimals) 
EXACT 該函數測試兩個字符串是否完全相同。如果它們完全相同,則返回 TRUE;否則,返回 FALSE。函數 EXACT 能區(qū)分大小寫,但忽略格式上的差異。利用函數 EXACT 可以測試輸入文檔內的文字。 EXACT(text1,text2) 
FIND FIND 用于查找其他文本串 (within_text) 內的文本串 (find_text),并從 within_text 的首字符開始返回 find_text 的起始位置編號。 FIND(find_text,within_text,start_num) 
FIXED 按指定的小數位數進行四舍五入,利用句點和逗號,以小數格式對該數設置格式,并以文字串形式返回結果。 FIXED(number,decimals,no_commas) 
JIS 將字符串中的半角(單字節(jié))英文字母或片假名更改為全角(雙字節(jié))字符。 JIS(text) 
LEFT LEFT 基于所指定的字符數返回文本串中的第一個或前幾個字符。
LEFTB 基于所指定的字節(jié)數返回文本串中的第一個或前幾個字符。此函數用于雙字節(jié)字符。 LEFT(text,num_chars)
LEFTB(text,num_bytes) 
LEN LEN 返回文本串中的字符數。
LENB 返回文本串中用于代表字符的字節(jié)數。此函數用于雙字節(jié)字符。 LEN(text)
LENB(text) 
LOWER 將一個文字串中的所有大寫字母轉換為小寫字母。 LOWER(text) 
MID MID 返回文本串中從指定位置開始的特定數目的字符,該數目由用戶指定。
MIDB 返回文本串中從指定位置開始的特定數目的字符,該數目由用戶指定。此函數用于雙字節(jié)字符。 MID(text,start_num,num_chars)
MIDB(text,start_num,num_bytes) 
PHONETIC 提取文本串中的拼音 (furigana) 字符。 PHONETIC(reference) 
PROPER 將文字串的首字母及任何非字母字符之后的首字母轉換成大寫。將其余的字母轉換成小寫。 PROPER(text) 
REPLACE REPLACE 使用其他文本串并根據所指定的字符數替換某文本串中的部分文本。
REPLACEB 使用其他文本串并根據所指定的字符數替換某文本串中的部分文本。此函數專為雙字節(jié)字符使用。 REPLACE(old_text,start_num,num_chars,new_text)
REPLACEB(old_text,start_num,num_bytes,new_text) 
REPT 按照給定的次數重復顯示文本??梢酝ㄟ^函數 REPT 來不斷地重復顯示某一文字串,對單元格進行填充。 REPT(text,number_times) 
RIGHT RIGHT 根據所指定的字符數返回文本串中最后一個或多個字符。
RIGHTB 根據所指定的字符數返回文本串中最后一個或多個字符。此函數用于雙字節(jié)字符。 RIGHT(text,num_chars)
RIGHTB(text,num_bytes) 
SEARCH SEARCH 返回從 start_num 開始首次找到特定字符或文本串的位置上特定字符的編號。使用 SEARCH 可確定字符或文本串在其他文本串中的位置,這樣就可使用 MID 或 REPLACE 函數更改文本。
SEARCHB 也可在其他文本串 (within_text) 中查找文本串 (find_text),并返回 find_text 的起始位置編號。此結果是基于每個字符所使用的字節(jié)數,并從 start_num 開始的。此函數用于雙字節(jié)字符。此外,也可使用 FINDB 在其他文本串中查找文本串。 SEARCH(find_text,within_text,start_num)
SEARCHB(find_text,within_text,start_num) 
SUBSTITUTE 在文字串中用 new_text 替代 old_text。如果需要在某一文字串中替換指定的文本,請使用函數 SUBSTITUTE;如果需要在某一文字串中替換指定位置處的任意文本,請使用函數 REPLACE。 SUBSTITUTE(text,old_text,new_text,instance_num) 
T 將數值轉換成文本。 T(value) 
TEXT 將一數值轉換為按指定數字格式表示的文本。 TEXT(value,format_text) 
TRIM 除了單詞之間的單個空格外,清除文本中所有的空格。在從其他應用程序中獲取帶有不規(guī)則空格的文本時,可以使用函數 TRIM。 TRIM(text) 
UPPER 將文本轉換成大寫形式。 UPPER(text) 
VALUE 將代表數字的文字串轉換成數字。 VALUE(text) 
WIDECHAR 將單字節(jié)字符轉換為雙字節(jié)字符。 WIDECHAR(text) 
YEN 使用 ¥(日圓)貨幣格式將數字轉換成文本,并對指定位置后的數字四舍五入。 YEN(number,decimals) 

 

附二、日期與時間函數

函數名 函數說明 語法 
DATE 返回代表特定日期的系列數。 DATE(year,month,day) 
DATEDIF 計算兩個日期之間的天數、月數或年數。 DATEDIF(start_date,end_date,unit) 
DATEVALUE 函數 DATEVALUE 的主要功能是將以文字表示的日期轉換成一個系列數。 DATEVALUE(date_text) 
DAY 返回以系列數表示的某日期的天數,用整數 1 到 31 表示。 DAY(serial_number) 
DAYS360 按照一年 360 天的算法(每個月以 30 天計,一年共計 12 個月),返回兩日期間相差的天數。 DAYS360(start_date,end_date,method) 
EDATE 返回指定日期 (start_date) 之前或之后指定月份數的日期系列數。使用函數 EDATE 可以計算與發(fā)行日處于一月中同一天的到期日的日期。 EDATE(start_date,months) 
EOMONTH 返回 start-date 之前或之后指定月份中最后一天的系列數。用函數 EOMONTH 可計算特定月份中最后一天的時間系列數,用于證券的到期日等計算。 EOMONTH(start_date,months) 
HOUR 返回時間值的小時數。即一個介于 0 (12:00 A.M.) 到 23 (11:00 P.M.) 之間的整數。 HOUR(serial_number) 
MINUTE 返回時間值中的分鐘。即一個介于 0 到 59 之間的整數。 MINUTE(serial_number) 
MONTH 返回以系列數表示的日期中的月份。月份是介于 1(一月)和 12(十二月)之間的整數。 MONTH(serial_number) 
NETWORKDAYS 返回參數 start-data 和 end-data 之間完整的工作日數值。工作日不包括周末和專門指定的假期 NETWORKDAYS(start_date,end_date,holidays) 
NOW 返回當前日期和時間所對應的系列數。 NOW( ) 
SECOND 返回時間值的秒數。返回的秒數為 0 至 59 之間的整數。 SECOND(serial_number) 
TIME 返回某一特定時間的小數值,函數 TIME 返回的小數值為從 0 到 0.99999999 之間的數值,代表從 0:00:00 (12:00:00 A.M) 到 23:59:59 (11:59:59 P.M) 之間的時間。
 TIME(hour,minute,second) 
TIMEVALUE 返回由文本串所代表的時間的小數值。該小數值為從 0 到 0.999999999 的數值,代表從 0:00:00 (12:00:00 AM) 到 23:59:59 (11:59:59 PM) 之間的時間。 TIMEVALUE(time_text) 
TODAY 返回當前日期的系列數,系列數是 Microsoft Excel 用于日期和時間計算的日期-時間代碼。 TODAY( ) 
WEEKDAY 返回某日期為星期幾。默認情況下,其值為 1(星期天)到 7(星期六)之間的整數。 WEEKDAY(serial_number,return_type) 
WEEKNUM 返回一個數字,該數字代表一年中的第幾周。 WEEKNUM(serial_num,return_type) 
WORKDAY 返回某日期(起始日期)之前或之后相隔指定工作日的某一日期的日期值。工作日不包括周末和專門指定的假日。 WORKDAY(start_date,days,holidays) 
YEAR 返回某日期的年份。返回值為 1900 到 9999 之間的整數。 YEAR(serial_number) 
YEARFRAC 返回 start_date 和 end_date 之間的天數占全年天數的百分比。 YEARFRAC(start_date,end_date,basis)

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多