Excel Home 免費(fèi)培訓(xùn)中心:http://t./
Excel Home 技術(shù)論壇:http://club./
總結(jié)個(gè)人認(rèn)為使用函數(shù)的方法就是確定三點(diǎn):函數(shù)需要那些參數(shù)、參數(shù)類型、函數(shù)返回值類型。
看了第一課時(shí)老師和同學(xué)們的總結(jié),獲益頗豐。
首先豐富一下學(xué)習(xí)函數(shù)的方法:
一.確定函數(shù)和函數(shù)參數(shù)的意義
1、reference參數(shù)一般地為單元格或單元格區(qū)域引用;也可以為INDIRECT函數(shù)或OFFSET函數(shù)構(gòu)建的單元格或單元格區(qū)域。
2、array參數(shù)可以為單元格區(qū)域、數(shù)組常量、內(nèi)存數(shù)組。
附:range:單元格區(qū)域的引用
sumif、countblank、countif
3、Lookup_value為查找值(可以為數(shù)值、引用或文本字符串);
table_array為查找區(qū)域(可以為區(qū)域、常量數(shù)組、區(qū)域名稱或數(shù)組名稱);
row_index_num為查找的行號(hào)(一般為數(shù)字);
col_index_num為查找的列號(hào)(一般為數(shù)字);
range_lookup為查找方式(一般為邏輯值);
row_num、col_num、index_num等這些含num的參數(shù)(一般為數(shù)值);
rows為行數(shù)(數(shù)字);
columns為列數(shù)(數(shù)字)。
二.理解函數(shù)參數(shù)的取值和取值方式
函數(shù)參數(shù)的取值,在不同的函數(shù)中有不同的方式。
如CHOOSE函數(shù)的第一參數(shù),取值方式是去尾取整。
再如OFFSET函數(shù)第二、三、四、五參數(shù)均可正可負(fù),要點(diǎn)是無(wú)論取正取負(fù)均不可超越EXCEL表格的邊界。
三.函數(shù)返回值(結(jié)果)的類型和意義
vlookup、hlookup、lookup、index返回單元格值
match返回單元格在查找區(qū)域的位置
indirect、offset返回單元格或單元格區(qū)域的引用
常用文本函數(shù)及其應(yīng)用實(shí)例
第一部分:文本
1.1 文本
文本:在excel中文本是指除數(shù)值、日期時(shí)間、邏輯值和錯(cuò)誤值以外的所有值。
文本是由n(0<=n<=32767)個(gè)字符組成的,因此文本也叫字符串。
注:n=0是指空文本,excel2003版本中一個(gè)單元格的最大容量是32767
以下列子都是文本:
“ABCD”、“123”、“”、“一二三四”等等。
1.2 字符
字符:計(jì)算機(jī)可識(shí)別的單個(gè)符號(hào)。(人們使用的記號(hào),抽象意義上的一個(gè)符號(hào)。)
字節(jié):計(jì)算機(jī)中存儲(chǔ)數(shù)據(jù)的單元。
字符可以分為:?jiǎn)巫止?jié)字符和雙字節(jié)字符。
字符與字節(jié)的關(guān)系:人與椅子故事
簡(jiǎn)單的舉例:人們坐在椅子上,人就相當(dāng)于字符;椅子相當(dāng)于字節(jié)。有的人坐一把椅子就夠了;有的胖人就需要占用兩把椅子。
注:在函數(shù)中文本一般用半角雙引號(hào)("")引起來(lái)。
1.3 關(guān)于空文本,要區(qū)分""和" "
空文本:1、其性質(zhì)是文本;2、它表示文本里什么也沒(méi)有,字符長(zhǎng)度為0;3、它用""表示。
比如在某單元格輸入=""或者=IF(單元格1>0,"",單元格2)或者=A65536&""等情況,得到的都是空文本。
而當(dāng)單元格中未曾輸入任何數(shù)據(jù)或公式,或者輸入的東西被DEL清除了,則稱該單元格為“空單元格”;
真空單元格,真的是空空如也。
區(qū)別:假設(shè)單元格1(A50)是真空單元格,單元格2(A51)輸入="",單元格3(A52)輸入="
"
TRUE =A50="" 可以將空單元格判別為空文本
TRUE =A50=0 可以將空單元格判別為空文本
FALSE =A51=0 空文本不等于0
TRUE =ISBLANK(A50) 單元格為真“空單元格”
FALSE =ISBLANK(A51) 單元格為假“空單元格”
0 =LEN(A50)
0 =LEN(A51) ""沒(méi)有長(zhǎng)度。
1 =LEN(A52) "
"雖然也是一個(gè)空,但這是一個(gè)空格,即" "的ASCII碼是32,其長(zhǎng)度是一個(gè)字節(jié)。
第二部分:文本函數(shù)
在excel2003中有34個(gè)標(biāo)準(zhǔn)的文本函數(shù)。涉及文本的函數(shù)不計(jì)其數(shù)。
本課時(shí)所涉及的文本函數(shù):
len() lenb()
mid() midb()
left() leftb() / right() rightb()
find() findb() / search() searchb()
substitute() replace() replaceb()
trim() clean() / rept()
2.1 len() lenb()
2.1.1 作用
LEN():返回文本字符串中的字符數(shù)。(人數(shù))
LENB():返回文本字符串中用于代表字符的字節(jié)數(shù)。(椅子數(shù))
2.1.2 函數(shù)返回值(結(jié)果):數(shù)值(整數(shù))
2.1.3 語(yǔ)法
LEN(text) LENB(text)
text:要查找其長(zhǎng)度的文本,空格和控制字符都將作為字符進(jìn)行計(jì)數(shù)。
2.1.4 text參數(shù)的特性(不僅僅文本可以作為text參數(shù),基本上除錯(cuò)誤值以外的值都可以作為text參數(shù))
注:無(wú)論數(shù)值的單元格格式是什么,用len來(lái)測(cè)量的數(shù)值長(zhǎng)度,都是原數(shù)值長(zhǎng)度。
2.1.5 在文本函數(shù)中,函數(shù)名以B結(jié)尾的是返回字符的字節(jié)數(shù);不加B的是返回字符數(shù)。
哪些屬于單字節(jié)字符、雙字節(jié)字符?
數(shù)字、字母、半角字符、邏輯值、日期都是單字節(jié)字符
注:日期的格式也是數(shù)值,在計(jì)算日期的字符和字節(jié)數(shù)的時(shí)候,算的是常規(guī)格式下的日期。
中文、全角字符等是雙字節(jié)字符
2.2 left() lefeb() / right() rightb()
2.2.1 作用
left():基于所指定的字符數(shù)返回文本字符串中的第一個(gè)或前幾個(gè)字符。
LeftB():基于所指定的字節(jié)數(shù)返回文本字符串中的第一個(gè)或多個(gè)字節(jié)的字符。
2.2.2 函數(shù)返回值(結(jié)果):文本
2.2.3 語(yǔ)法:
LEFT(text,num_chars)
LEFTB(text,num_bytes)
text 是包含要提取字符的文本字符串
num_chars 指定希望LEFT提取的字符數(shù)。
num_bytes 指定希望LEFT提取的字節(jié)數(shù)。
說(shuō)明: (注:省略為逗號(hào)連同參數(shù)一起省略)
2.3.4 number型參數(shù)的特性
2.3 mid() midb()
2.3.1 作用
mid():返回文本字符串中西歐那個(gè)指定位置開始的特定數(shù)目的字符,該數(shù)目由用戶指定。
MIDB():根據(jù)指定的字節(jié)數(shù),返回文本字符串中從指定位置開始的特定數(shù)目的字符。
2.3.2 函數(shù)返回值(結(jié)果):文本
2.3.3 語(yǔ)法:
MID(text,start_num,num_chars)
MIDB(text,start_num,num_bytes)
text 是包含要提取字符的文本字符串
start_num
是文本中要提取的第一個(gè)字符的位置,文本中第一個(gè)字符的start_num為1,依次類推。
num_chars 指定希望MID從文本中返回字符的個(gè)數(shù)。
num_bytes 指定希望MIDB從文本中返回字符的個(gè)數(shù)(按字節(jié))。
說(shuō)明: (注:省略為逗號(hào)連同參數(shù)一起省略)
注:MIDB()函數(shù)start_num參數(shù)為偶數(shù)、num_bytes參數(shù)為奇數(shù)時(shí),
自start_num的下一位偶數(shù)字節(jié)開始,返回占用num_bytes前一位偶數(shù)個(gè)字節(jié)的字符。
2.4 find() findb() / search()
searchb()
2.4.1 作用
find()、findb():在一個(gè)文本值中查找另一個(gè)文本值(區(qū)分大小寫)
search()、searchb():在一個(gè)文本值中查找另一個(gè)文本值(不區(qū)分大小寫),可以使用通配符。
2.4.2 函數(shù)返回值(結(jié)果):數(shù)值(整數(shù))
2.4.3 語(yǔ)法:
FIND(find_text,within_text,start_num)
FINDB(find_text,within_text,start_num)
SEARCH(find_text,within_text,start_num)
SEARCHB(find_text,within_text,start_num)
Find_text 是要查找的文本
Within_text 是包含要查找文本的文本。
Start_num 指定開始進(jìn)行查找的字符。within_text
中的首字符是編號(hào)為 1 的字符。
說(shuō)明: SEARCH
和 SEARCHB 在查找文本時(shí)不區(qū)分大小寫。
SEARCH 和 SEARCHB 類似于 FIND 和
FINDB,但 FIND 和 FINDB 區(qū)分大小寫。
(注:省略為逗號(hào)連同參數(shù)一起省略)
另外:在SEARCH/SEARCHB 中 find_text
支持使用通配符,包括問(wèn)號(hào) (?)和星號(hào) (*)。
問(wèn)號(hào)可匹配任意的單個(gè)字符,星號(hào)可匹配任意一串字符。
如果要查找真正的問(wèn)號(hào)或星號(hào),請(qǐng)?jiān)谠撟址版I入波形符 (~)。
如果 within_text 中,有多個(gè)
find_text,
FIND函數(shù)返回start_num 以后的第一個(gè) find_text
的相對(duì)于within_text 的位置。
2.5 SUBSTITUTE()
2.5.1 作用
SUBSTITUTE():在文本字符串中使用new_text 替代
old_text
2.5.2 函數(shù)返回值(結(jié)果):文本
2.5.3 語(yǔ)法:
SUBSTITUTE(text,old_text,new_text,instance_num)
text:原文本
old_text:原文本中要被替換的部分
new_text:將要替換old_text的部分
Instance_num 為一數(shù)值,用來(lái)指定以 new_text
替換第幾次出現(xiàn)的 old_text。
如果指定了 instance_num,則只有滿足要求的
old_text 被替換;否則將用 new_text 替換 Text 中出現(xiàn)的所有
old_text。
如果指定的instance_num大于old_text的數(shù)量,則old_text都不會(huì)被替換。
2.6 replace() replaceb()
2.6.1 作用
replace():使用其他文本字符串并根據(jù)所指定的字符數(shù)替換某文本字符串中的部分文本。
repalceb():使用其他文本字符串并根據(jù)所指定的字符數(shù)替換某文本字符串中的部分文本。此函數(shù)專為雙字節(jié)字符使用。
2.6.2 函數(shù)返回值(結(jié)果):文本
2.6.3 語(yǔ)法:
REPLACE(old_text,start_num,num_chars,new_text)
old_text:是要替換其部分字符的文本。
start_num:是要用 new_text 替換的 old_text
中字符的位置。(從第幾個(gè)字符開始)
num_chars:是希望 REPLACE 使用 new_text
替換 old_text
中字符的個(gè)數(shù)。(將幾個(gè)字符替換,指定替換字符個(gè)數(shù)。)
num_bytes:是希望 REPLACE 使用 new_text
替換 old_text 中字節(jié)的個(gè)數(shù)。
new_text:是要用于替換 old_text 中字符的文本。
注:replace()函數(shù)就是:把原文本的從第幾個(gè)字符開始去幾個(gè)字符出來(lái),把取出來(lái)的字符去掉,然后用新的文本替換。
說(shuō)明: (注:省略為逗號(hào)連同參數(shù)一起省略)
2.7 trim() clean()
2.7.1 作用
trim():除了單詞之間的單個(gè)空格外,清除文本中所有的空格。
clean():刪除文本中不能打印的字符(如換行符)。
2.7.2 函數(shù)返回值(結(jié)果):文本
2.7.3 語(yǔ)法:
TRIM(text)
CLEAN(text)
2.8 rept()
2.8.1 作用
按照給定的次數(shù)重復(fù)顯示文本??梢酝ㄟ^(guò)函數(shù)rept來(lái)不斷地重復(fù)顯示某一文本字符串,對(duì)單元格進(jìn)行填充。
2.8.2 函數(shù)返回值(結(jié)果):文本
2.8.3 語(yǔ)法:
REPT(text,number_times)
Text:需要重復(fù)顯示的文本。
Number_times:是指定文本重復(fù)次數(shù)的大于等等0的數(shù)。如果為小數(shù),取整數(shù)部分.
注:rept()函數(shù)就是:用number_times個(gè)text參數(shù)指定的文本重新組成一個(gè)新的字符串。
第三部分:文本連接函數(shù)
3.1 文本連接符:&
3.2 CONCATENATE()
3.2.1 作用
CONCATENATE():將幾個(gè)文本字符串合并為一個(gè)文本字符串。
3.2.2 函數(shù)返回值(結(jié)果):文本
3.2.3 語(yǔ)法
CONCATENATE(text1,text2,...)
3.3 PHONETIC()
3.3.1 作用
提取文本字符串中的拼音 (furigana)
字符。該函數(shù)只適用于日文版。
經(jīng)過(guò)前輩們的不斷探索,發(fā)現(xiàn)PHONETIC()其他用法:連接文本字符串(文本字符不包括邏輯值、錯(cuò)誤值、數(shù)值)
3.3.2 函數(shù)返回值(結(jié)果):文本
3.3.3 語(yǔ)法
PHONETIC(reference)
文本連接方法比較:
第四部分:實(shí)踐應(yīng)用
4.1 統(tǒng)計(jì)字符串中文字符個(gè)數(shù),統(tǒng)計(jì)字符串中非中文字符個(gè)數(shù)
中文字符個(gè)數(shù):LENB(字符串)-LEN(字符串)
非中文字符個(gè)數(shù):2*LEN(字符串)-LENB(字符串)
4.2 提取身份證號(hào)碼信息
地區(qū)號(hào): LEFT("身份證號(hào)碼",6)
出生日期: MID("身份證號(hào)碼",7,LEN("身份證號(hào)碼")/2.2)
性別: RIFHT(LEFT("身份證號(hào)碼",17))
4.3 分隔字符串 注:LEN("字符串")<=99
帶“標(biāo)記符”的字符串
LEFT(FIND("標(biāo)記符","字符串",1)-1)
RIGHT(LEN("字符串")-FIND("標(biāo)記符","字符串",1))
TRIM(LEFT(SUBSTITUTE("字符串","標(biāo)記符",REPT("
",99),1),99))
TRIM(RIGHT(SUBSTITUTE("字符串","標(biāo)記符",REPT("
",99),1),99))
文本函數(shù)還有很多,暫時(shí)總結(jié)到這里吧。很高興能通過(guò)本課時(shí)的課程,更加具體深入的了解文本函數(shù)。感謝老師傳授學(xué)習(xí)函數(shù)的方法;更深層地體會(huì)到函數(shù)應(yīng)用的多變性。
結(jié)束語(yǔ):盜用一句話,讓函數(shù)帶著我們的工作飛奔吧… 評(píng)論這張
轉(zhuǎn)發(fā)至微博
|
|