配色: 字号:
Excel函数实例操作即查即用之文本函数
2012-03-15 | 阅:  转:  |  分享 
  


文本函数

CHAPTER3

77

第三章

文本函数

3.1文本函数基础

3.2文本函数实例速查

78

CHAPTER3

文本函数

所谓文本函数,就是可以在公式中处理文字串的函数。例如,可以改

变大小写或确定文字串的长度;可以替换某些字符或者去除某些字符等。

而日期和时间函数则可以在公式中分析和处理日期值和时间值。

3.1

文本函数基础

文本是指出了数值、日期或时间、公式之外的字母和数值字符的任意

组合。但此、名称和标签很明显都属于文本值。单元格中前面以“''”开头

的内容,或者采用文本格式的内容也属于文本,文本值也被称为字符串。

3.1.1

大小写转换

(1)LOWER:将一个文字串中的所有大写字母转换为小写字母。

(2)UPPER:将文本转换成大写形式。

(3)PROPER:将文字串的首字母及任何非字母字符之后的首字母

转换成大写。将其余的字母转换成小写。

这三种函数的基本语法形式均为函数名(text)。示例说明:

已有字符串为:pLeaseComEHere!可以看到由于输入的不规范,这

句话大小写乱用了。通过以上三个函数可以将文本转换显示样式,使得文

本变得规范。

Lower(pLeaseComEHere!)=pleasecomehere!

upper(pLeaseComEHere!)=PLEASECOMEHERE!

proper(pLeaseComEHere!)=PleaseComeHere!

3.1.2

取出字符串中的部分字符

用户可以使用Mid、Left、Right等函数从长字符串内获取一部分字

符。具体语法格式为:

(1)LEFT函数:LEFT(text,num_chars)其中Text是包含要提取



文本函数

CHAPTER3

79

字符的文本串。Num_chars指定要由LEFT所提取的字符数。

(2)MID函数:MID(text,start_num,num_chars)其中Text是包含

要提取字符的文本串。Start_num是文本中要提取的第一个字符的位置。

(3)RIGHT函数:RIGHT(text,num_chars)其中Text是包含要提取

字符的文本串。Num_chars指定希望RIGHT提取的字符数。

比如,从字符串“Thisisanapple.”分别取出字符“This”、

“apple”、“is”的具体函数写法为。

LEFT("Thisisanapple",4)=This

RIGHT("Thisisanapple",5)=apple

MID("Thisisanapple",6,2)=is

取出字符串中

的部分字符

3.1.3

去除字符串的空白

在字符串形态中,空白也是一个有效的字符,但是如果字符串中出现

空白字符时,容易在判断或对比数据是发生错误,在Excel中你可以使用

Trim函数清除字符串中的空白。

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

Trim函数不会清除单词之间的单个空格,如果连这部分空格都需清除

的话,建议使用替换功能。比如,从字符串“MynameisMary“中清除空

格的函数写法为:TRIM("MynameisMary")=MynameisMary。

80

CHAPTER3

文本函数

3.1.4

字符串的比较

在数据表中经常会比对不同的字符串,此时你可以使用EXACT函数

来比较两个字符串是否相同。该函数测试两个字符串是否完全相同。如果

它们完全相同,则返回TRUE;否则,返回FALSE。函数EXACT能区分

大小写,但忽略格式上的差异。利用函数EXACT可以测试输入文档内的

文字。语法形式为:EXACT(text1,text2)Text1为待比较的第一个字符

串。Text2为待比较的第二个字符串,举例说明。参见下图:

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

字符串的比较

3.2

文本函数实例速查





1ASC(

将字符串中的全角英文字母更改为半角字符

)

用途:将字符串中的全角(双字节)英文字母更改为半角(单字节)字符。

语法:ASC(text)

参数:Text为文本或包含文本的单元格引用。如果文本中不包含任何

全角英文字母,则文本不会被更改。

实例:如果A1=excel,则公式“=ASC(A1)”返回excel。





2CHAR(

返回对应于数字代码的字符

)

用途:返回对应于数字代码的字符,该函数可将其他类型的电脑

文件中的代码转换为字符(操作环境为MacintoshMacintosh字符集和

WindowsANSI字符集)。

语法:CHAR(number)。

参数:Number是用于转换的字符代码,介于1~255之间(使用当前计



文本函数

CHAPTER3

81

算机字符集中的字符)。

实例:公式“=CHAR(56)”返回8,=CHAR(36)返回$。





3CLEAN(

删除文本中不能打印的字符

)

用途:删除文本中不能打印的字符。对从其他应用程序中输入的字符

串使用CLEAN函数,将删除其中含有的当前操作系统无法打印的字符。

语法:CLEAN(text)。

参数:Text为要从中删除不能打印字符的任何字符串。

实例:由于CHAR(7)返回一个不能打印的字符,因此公式“=CLEAN(

CHAR(7)&"text"&CHAR(7))”返回text。





4CODE(

返回文字串中第一个字符的数字代码

)

用途:返回文字串中第一个字符的数字代码(对应于计算机当前使用的

字符集)。

语法:CODE(text)

参数:Text为需要得到其第一个字符代码的文本。

实例:因为CHAR(65)返回A,所以公式“=CODE("Alphabet")”返

回65。





5CONCATENATE(

将若干文字串合并到一个文字串中

)

用途:将若干文字串合并到一个文字串中,其功能与"&"运算符相同。

语法:CONCATENATE(text1,text2,...)

参数:Text1,text2,...为1到30个将要合并成单个文本的文本项,

这些文本项可以是文字串、数字或对单个单元格的引用。

实例:如果A1=98、A2=千米,则公式“=CONCATENATE(A1,

A2)”返回“98千米”,与公式“=A1&A2”等价。





6DOLLAR



RMB(

按货币格式将小数四舍五入并转换成文字

)

用途:按照货币格式将小数四舍五入到指定的位数并转换成文字。

语法:DOLLAR(number,decimals)或RMB(number,decimals)。

参数:Number是数字、包含数字的单元格引用,或计算结果为数字的

公式;Decimals是十进制的小数,如果Decimals为负数,则参数number

82

CHAPTER3

文本函数

从小数点往左按相应位数取整。如果省略Decimals,则假设其值为2。

实例:公式“=RMB(1586.567,2)”返回“1586.57”,

=RMB(99.888)返回“99.89”。





7EXACT(

测试两个字符串是否完全相同

)

用途:测试两个字符串是否完全相同。如果它们完全相同,则返回

TRUE;否则返回FALSE。EXACT函数能区分大小写,但忽略格式上的

差异。

语法:EXACT(text1,text2)。

参数:Text1是待比较的第一个字符串,Text2是待比较的第二个字

符串。

实例:如果A1=物理、A2=化学A3=物理,则公式“=EXACT(A1,

A2)”返回FALSE,=EXACT(A1,A3)返回FALSE,

=EXACT("word","word")返回TRUE。





8FIND(

用于查找文本串

)

用途:FIND用于查找其他文本串(within_text)内的文本串

(find_text),并从within_text的首字符开始返回find_text的起始位置编

号。此函数适用于双字节字符,它区分大小写但不允许使用通配符。

语法:FIND(find_text,within_text,start_num),

参数:Find_text是待查找的目标文本;Within_text是包含待查找文

本的源文本;Start_num指定从其开始进行查找的字符,即within_text中

编号为1的字符。如果忽略start_num,则假设其为1。

实例:如果A1=软件报,则公式“=FIND("软件",A1,1)”返回1。





9FINDB(

查找文本串,并返回起始位置编号

)

用途:FINDB用于查找其他文本串(within_text)内的文本串

(find_text),并根据每个字符使用的字节数从within_text的首字符开始返

回find_text的起始位置编号。FIND与FINDB的区别在于:前者是以字符数

为单位返回起始位置编号,后者是以字节数为单位返回起始位置编号。

语法:FINDB(find_text,within_text,start_num)

参数:Find_text是待查找的目标文本;Within_text是包含待查找文



文本函数

CHAPTER3

83

本的源文本;Start_num指定从其开始进行查找的字符,即within_text中

编号为1的字符。如果忽略start_num,则假设其为1。

注意

此函数适用于双字节字符,它能区分大小写但不允许使用

通配符。其它事项与FIND函数相同。

实例:如果A1=电脑爱好者,则公式“=FINDB(爱好者",A1,1)”返

回5。因为每个字符均按字节进行计算,而一个汉字为2个字节,所以第三

个汉字“爱”从第五个字节开始。





10FIXED(

四舍五入一个数以文字串形式返回结果

)

用途:按指定的小数位数四舍五入一个数,以小数格式设置后以文字

串形式返回结果。

语法:FIXED(number,decimals,no_commas)。

参数:Number是要进行四舍五入并转换成文字串的数;Decimals

为一数值,用以指定小数点右边的小数位数;No_commas为一逻辑值。

如果是TRUE,则函数FIXED返回的文字不含逗号。如果no_commas是

FALSE或省略,则返回的文字中包含逗号。

实例:如果A1=2001.16845,则公式“=FIXED(A2,2,TRUE)”返

回2001.17,=FIXED(6834.567,-1)返回6830。





11JIS(

将字符串中的半角英文字母更改为全角字符

)

用途:将字符串中的半角(单字节)英文字母更改为全角(双字节)字符。

语法:JIS(text)

参数:Text为文本或对包含文本的单元格(或引用)。如果文本中不包

含任何半角英文字母,则文本不会更改。

实例:如果A1=excel,则公式“=JIS(a1)”返回EXCEL。





12LEFT



LEFTB(

返回文本串中的第一个或前几个字符

(



))

用途:根据指定的字符数返回文本串中的第一个或前几个字符。此函

数用于双字节字符。

84

CHAPTER3

文本函数

语法:LEFT(text,num_chars)或LEFTB(text,num_bytes)。

参数:Text是包含要提取字符的文本串;Num_chars指定函数要提取

的字符数,它必须大于或等于0。Num_bytes按字节数指定由LEFTB提取

的字符数。

实例:如果A1=电脑爱好者,则LEFT(A1,2)返回“电脑”,

LEFTB(A1,2)返回“电”。





13LEN



LENB(

返回文本串的字符数和所有字符的字节数

)

用途:LEN返回文本串的字符数。LENB返回文本串中所有字符的

字节数。

语法:LEN(text)或LENB(text)。

参数:Text待要查找其长度的文本。

注意

此函数用于双字节字符,且空格也将作为字符进行统计。

实例:如果A1=电脑爱好者,则公式“=LEN(A1)”返回5,

=LENB(A1)返回10。





14LOWER(

将所有大写字母转换为小写字母

)

用途:将一个文字串中的所有大写字母转换为小写字母。

语法:LOWER(text)。语法:Text是包含待转换字母的文字串。

注意

LOWER函数不改变文字串中非字母的字符。LOWER与

PROPER和UPPER函数非常相似。

实例:如果A1=Excel,则公式“=LOWER(A1)”返回excel。



文本函数

CHAPTER3

85





15MID



MIDB(

返回文本串中特定数目的字符

(



))

用途:MID返回文本串中从指定位置开始的特定数目的字符,该数目由

用户指定。MIDB返回文本串中从指定位置开始的特定数目的字符,该数目

由用户指定。MIDB函数可以用于双字节字符。

语法:MID(text,start_num,num_chars)或MIDB(text,

start_num,num_bytes)。

参数:Text是包含要提取字符的文本串。Start_num是文本中要提

取的第一个字符的位置,文本中第一个字符的start_num为1,以此类推;

Num_chars指定希望MID从文本中返回字符的个数;Num_bytes指定希望

MIDB从文本中按字节返回字符的个数。

实例:如果a1=电子计算机,则公式“=MID(A1,3,2)”返回“计

算”,=MIDB(A1,3,2)返回“子”。





16PHONETIC(

提取文本串中的拼音

(furigana)

字符

)

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

语法:PHONETIC(reference)。

参数:Reference为文本串或对单个单元格或包含文本串的单元格区

域的引用。如果reference为单元格区域,则返回区域左上角单元格中的

furigana文本串。如果reference为不相邻单元格的区域,将返回#N/A

错误值。

注意

该函数在中文Excel中无效。





17PROPER(

将文字串的首字母转换成大写

)

用途:将文字串的首字母及任何非字母字符之后的首字母转换成大

写。将其余的字母转换成小写。

语法:PROPER(text)参数:Text是需要进行转换的字符串,包括双

引号中的文字串、返回文本值的公式或对含有文本的单元格引用等。

86

CHAPTER3

文本函数

实例:如果A1=学习excel,则公式“=PROPER(A1)”返回“学习

Excel”。





18REPLACE



REPLACEB(

指定字符

(



)

数替换文本

)

用途:REPLACE使用其他文本串并根据所指定的字符数替换另一文

本串中的部分文本。REPLACEB的用途与REPLACE相同,它是根据所指

定的字节数替换另一文本串中的部分文本。

语法:REPLACE(old_text,start_num,num_chars,

new_text),REPLACEB(old_text,start_num,num_bytes,

new_text)。参数:Old_text是要替换其部分字符的文本;Start_num

是要用new_text替换的old_text中字符的位置;Num_chars是希望

REPLACE使用new_text替换old_text中字符的个数;Num_bytes是希

望REPLACE使用new_text替换old_text的字节数;New_text是要用于

替换old_text中字符的文本。

注意

以上两函数均适用于双字节的汉字。

实例:如果A1=学习的革命、A2=电脑,则公式“=REPLACE(A1,

3,3,A2)”返回“学习电脑”,=REPLACEB(A1,2,3,A2)返回“电

脑的革命”。





19REPT(

按照给定的次数重复显示文本

)

用途:按照给定的次数重复显示文本。可以通过REPT函数对单元格

进行重复填充。

语法:REPT(text,number_times)。

参数:Text是需要重复显示的文本,Number_times是重复显示的次

数(正数)。



文本函数

CHAPTER3

87

注意

REPT函数的结果不能多于255个字符。

实例:公式“=REPT("软件报",2)”返回“软件报软件报”。





20RIGHT



RIGHTB(

返回文本串中最后一个或多个字符

(



))

用途:RIGHT根据所指定的字符数返回文本串中最后一个或多个字

符。RIGHTB根据所指定的字节数返回文本串中最后一个或多个字符。

语法:RIGHT(text,num_chars),RIGHTB(text,num_bytes)。

参数:Text是包含要提取字符的文本串;Num_chars指定希望

RIGHT提取的字符数,它必须大于或等于0。如果num_chars大于文本

长度,则RIGHT返回所有文本。如果忽略num_chars,则假定其为1。

Num_bytes指定欲提取字符的字节数。

实例:如果A1=学习的革命,则公式“=RIGHT(A1,2)”返回“革

命”,=RIGHTB(A1,2)返回“命”。





21SEARCH



SEARCHB(



start_num

首次找到字符位置编号

)

用途:返回从start_num开始首次找到特定字符或文本串的位置编

号。其中SEARCH以字符数为单位,SEARCHB以字节数为单位。

语法:SEARCH(find_text,within_text,start_num),

SEARCHB(find_text,within_text,start_num)。

参数:Find_text是要查找的文本,可以使用通配符,包括问号“?”

和星号“”。其中问号可匹配任意的单个字符,

星号可匹配任意的连续字符。如果要查找实际的问号或星号,应当

在该字符前键入波浪线“~”。Within_text是要在其中查找find_text的

文本。Start_num是within_text中开始查找的字符的编号。如果忽略

start_num,则假定其为1。

实例:如果A1=学习的革命,则公式“=SEARCH("的",A1)”返回

3,=SEARCHB("的",A1)返回5。

88

CHAPTER3

文本函数





22SUBSTITUTE(

在文字串中用

new_text

替代

old_text)

用途:在文字串中用new_text替代old_text。如果需要在一个文字串

中替换指定的文本,可以使用函数SUBSTITUTE;

如果需要在某一文字串中替换指定位置处的任意文本,就应当使用函

数REPLACE。

语法:SUBSTITUTE(text,old_text,new_text,

instance_num)。

参数:Text是需要替换其中字符的文本,或是含有文本的单元格引

用;Old_text是需要替换的旧文本;New_text用于替换old_text的文

本;Instance_num为一数值,用来指定以new_text替换第几次出现的

old_text;如果指定了instance_num,则只有满足要求的old_text被替

换;否则将用new_text替换Text中出现的所有old_text。

实例:如果A1=学习的革命、A2=电脑,则公式

“=SUBSTITUTE(A1,"的革命",A2,1)”返回“学习电脑”。





23T(

将数值转换成文本

)

用途:将数值转换成文本。

语法:T(value)。

参数:Value是需要进行测试的数据。如果value本身就是文本,或是

对文本单元格的引用,T函数将返回value;如果没有引用文本,则返回

""(空文本)。

实例:如果A1中含有文本“电脑”,则公式“=T(A1)”返回“电

脑”。





24TEXT(

将数值转换为按指定数字格式表示的文本

)

用途:将数值转换为按指定数字格式表示的文本。

语法:TEXT(value,format_text)。

参数:Value是数值、计算结果是数值的公式、或对数值单元格的引

用;Format_text是所要选用的文本型数字格式,即“单元格格式”对

话框“数字”选项卡的“分类”列表框中显示的格式,它不能包含星号

“”。



文本函数

CHAPTER3

89

注意

使用“单元格格式”对话框的“数字”选项卡设置单元格

格式,只会改变单元格的格式而不会影响其中的数值。使用函数

TEXT可以将数值转换为带格式的文本,而其结果将不再作为数

字参与计算。

实例:如果A1=2986.638,则公式“=TEXT(A5,"#,##0.00")”

返回2,986.64。





25TRIM(

清除文本中的所有的空格

)

用途:除了单词之间的单个空格外,清除文本中的所有的空格。如果

从其他应用程序中获得了带有不规则空格的文本,可以使用TRIM函数清除

这些空格。

语法:TRIM(text)。

参数:Text是需要清除其中空格的文本。

实例:如果A1=FirstQuarterEarnings,则公式“=TRIM(A1)”返回

“FirstQuarterEarnings”。





26UPPER(

将文本转换成大写形式

)

用途:将文本转换成大写形式。

语法:UPPER(text)。

参数:Text为需要转换成大写形式的文本,它可以是引用或文字串。

实例:公式“=UPPER("apple")”返回APPLE。





27VALUE(

将表示数字的文字串转换成数字

)

用途:将表示数字的文字串转换成数字。

语法:VALUE(text)。

参数:Text为带引号的文本,或对需要进行文本转换的单元格的引

用。它可以是Excel可以识别的任意常数、日期或时间格式。如果Text不

属于上述格式,则VALUE函数返回错误值#VALUE!。

90

CHAPTER3

文本函数

注意

通常不需要在公式中使用VALUE函数,Excel可以在需要

时自动进行转换。VALUE函数主要用于与其他电子表格程序

兼容。

实例:公式“=VALUE("1,000")”返回1000;

=VALUE("16:48:00")-VALUE("12:00:00")返回0.2,该序列数等于4小时

48分钟。





28WIDECHAR(

将单字节字符转换为双字节字符

)

用途:将单字节字符转换为双字节字符。

语法:WIDECHAR(text)。

参数:Text是需要转换为双字节字符的文本或包含文本的单元格

引用。

注意

因为汉字本身是双字节字符,所以使用此函数转换汉字时

得到的是汉字的原形。

实例:公式“=WIDECHAR("apple")”返回apple,=WIDECHAR("电

脑")返回“电脑”。

献花(0)
+1
(本文系杨广瑞首藏)