Excel数据分析第六讲(若干文本函数的使用)

在本课程中,我们来学习和掌握以下文本函数。

LEFT(text,k)函数返回一个给定字符串最左边的k个字符

RIGHT(text,k)函数返回一个给定字符串最右边边的k个字符

MID(text,k,m)函数返回从第k个字符开始的m个字符

TRIM(text)函数去掉字符前后的空格

LEN(text)函数返回字符的长度(包含空格)

FIND(text_to_find,atual_text,k),SEARCH(text_to_find,atual_text,k)函数返回一个字符串在另一个字符串中出现的位置。FIND函数是大小写敏感的,SEARCH是大小写不敏感的。

REPT(text,number_of_times)函数按照定义的次数重复显示文本

CONCATENATE(text1,text2,….)函数用来连接多个字符串

REPLACE(old_text,k,m,new_text)函数从某个字符串的指定位置把老字符串的m个字符用新的文本替换掉

VALUE(text)函数将文本转化为数字

UPPER(text)函数将文本变成大写

LOWER(text)函数将文本变成小写

PROPER(text)函数对指定文本字符串的首字母及文本中任何非中文之后的首个字母转换成大写(以空格和字符为界),其余字母都转换为小写函数

CHAR(number)函数根据数字代码返回字符

CLEAN(number)函数删除文本中所有不能打印的字符

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

下图演示了LEN,LEFT,VALUE,MID,CONCATENATE函数的用法。

B2单元格的公式是=LEN(B4),C4单元格的公式是=LEFT(B4,12),D4单元格的公式是=VALUE(RIGHT(B4,6),E4单元格的公式是=MID(B4,13,LEN(B4)-6-12),F4单元格的公式是=CONCATENATE(C4,E4,D4)

下面这个例子演示了如何对数据进行清洗

首先在E5单元格使用公式=CHAR(10)&33将一个非打印字符CHAR(10)33拼接起来。当在E8单元格输入公式=VALUE(E4),因为有非打印字符CHAR(10)的存在所以EXCEL不能将改文本转成数字。在E11单元格我们输入公式=CLEAN(E5)把非打印字符CHAR(10)去掉,然后在E12单元格输入公式=VALUE(E11),这时候字符被正确转成数字33

接下来的例子演示了如何对一个字符串进行切割。

我们用了FIND,LEFT,MID,RIGHT函数将“10+300+400”这个字符串拆成3个部分。

首先我们用FIND函数找到第一个"+"和第二个"+"的位置。然后使用LEFT,MID,RIGHT函数将“10+300+400” 这个字符串的前、中、后三个数字分别提取出来(详见上图)。

最后教大家一个小技巧能快速提取字符,示例文件截图如下

如果不使用任何公式,我们希望快速提取每个人的姓(LAST)和名(FIRST)该怎么做。首先在E6单元格输入Tricia,然后按CTRL+E组合键。EXCEL会自动把每个人的名(FIRST)提取出来。同样的操作,在F6单元格输入Lopez,然后按CTRL+E组合键就可以自动得到每个人的姓(LAST)。是不是很神奇~

今天的课程到此为止,大家有任何问题可以给我留言


微信扫一扫    关注"人人都是数据分析工程师"

你可能感兴趣的:(Excel数据分析第六讲(若干文本函数的使用))