当前位置:首页 > 微软office > Excel > 正文内容

字符提取,这些公式会了吗?

zyhwxm3年前 (2022-07-04)Excel64
日常工作中,常碰到需要提取字符的情况,2013及以上版本的Excel中,可以通过“快速填充“功能快速提取字符<快捷键 Ctrl+E>。 
但“快速填充“不一定都能识别到我们希望提取的字符,而且当原数据变化时,提取的数据无法跟着一起变化,故此次介绍以下字符提取函数。

这些函数可能不是最便利的方法,希望通过这些函数的介绍,提供一些提取字符的思路。 

LEFT函数:
从一个文本字符串的第一个字符开始返回指定个数的字符。
函数结构:
=LEFT(字符串,[提取几个字符])
第二参数如果忽略,则默认为1。
以下图为例,需要提取部门。


C3单元格输入以下公式,向下填充。
=LEFT(A3,3) 

RIGHT函数:
从一个文本字符串的最后一个字符开始返回指定个数的字符。
函数结构:
=RIGHT(字符串,[提取几个字符])
同样,第二参数如果忽略,则默认为1。
示例:根据表1信息提取获奖人数
E3单元格输入以下公式再向下填充。
=RIGHT(A3,2)
 
MID函数:
从文本字符串中指定的起始位置起,返回指定长度的字符。
函数结构:
=MID(字符串,开始提取的位置,提取几个字符)
示例:根据表1信息提取获奖名
D3单元格输入以下公式再向下填充。
 =MID(A3,5,3)
注意:LEFT/RIGHT/MID均为文本处理函数,提取的结果亦为文本,若需参与计算,需转化为数值。 
 
BASE函数:
将字符串转换成具有给定基数的文本表示形式。
函数结构:
=BASE(数字,基数,[字符长度])
如果省略第三参数,则不添加前导零。
示例:以下公式将数字678按十进制修正为4位,即显示0678。
=BASE(678,10,4)

FIND函数:
返回一个字符串在另一个字符串中出现的起始位置(区分大小写)
函数结构:
=FIND(要查找的字符,被查找的字符,[从第几个字符开始查找])
如果第三参数忽略,则默认为1,即从第一个字符开始查找。
示例:查找表1中第二个“-”所有的位置,B3单元格输入以下公式再向下填充。
 =FIND("-",A3,5)

综合应用:
1:根据表2身份证号码提取出生年月并生成称呼(性别为女,称女士;性别为男,称先生)。
1)出生日期,C3单元格自定义单元格格式为:####"年"##"月"##"日",然后输入公式向下填充,
=--MID(B3,7,8)

2)称呼:D3单元格输入以下公式并向下填充:
=LEFT(A3)&IF(-1^MID(B3,17,1)+1,"女士","先生")
思路:身份证第17位为奇数,男性;偶数则为女性。

 
2、根据表3产品信息提取尺码。

B3单元格输入公式,再向下填充。
=MID(A3,FIND("-",A3,FIND("-",A3)+1)+1,4)
思路:从第二个“-” 后的位置开始提取字符,MID的第三参数只需要大于等于所有尺码的长度即可。
 
3、提取表4中的数字。

方法一:
B3单元格输入公式,Ctrl+Shift+Enter三键回车,再向下填充。
=MAX(IFERROR(--LEFT(A3,ROW($1:$10)),))
思路:创建数组依次提取字符,通过“负负得正”转换为数值,并将错误值通过IFERROR转为0再求最大值。
方法二:
B3单元格输入公式,Ctrl+Shift+Enter三键回车,再向下填充。
=MAX(IFERROR(--MID(A3,ROW($1:$9),{1,2,3,4}),))
 
4、根据表5中A列编号修正为统一格式。

B3单元格输入以下公式,再向下填充。
方法一:
="编号"&BASE(A3,10,6)
方法二:
="编号"&RIGHT("00000"&A3,6)

5、计算表6中各部门的人数。

C3单元格输入公式,Ctrl+Shift+Enter三键回车。
=SUM(N(MID(B3,ROW($1:$50),1)="、"))+1
思路:构建数组,每次提取一个字符,计算等于”、”的个数,加1即为人数。

6、提取表7中的姓名及手机号。

提取姓名,B4单元格输入公式,向下填充。
=LEFT(A4,LENB(A4)-LEN(A4))
提取手机号,C4单元格输入公式,向下填充。
=RIGHT(A4,LEN(A4)*2-LENB(A4))


今天的练习文件在此,你也试试吧~~
https://pan.baidu.com/s/1diDYm9aqLl52haR-SAZ6eA 
提取码: 5e9s

 图文作者:彭佳

本篇文章来源于微信公众号:Excel之家ExcelHome


版权声明:本文版权归原作者所有,仅供技术参考;

                 若有违反您个人权益,请留言反馈删除相关信息;


本文链接:http://zyh-c.myds.me:8086/post/224.html

相关文章

Excel常用函数公式20例

Excel常用函数公式20例

下面是一组常用Excel函数公式的用法,学会这些套路,让工作效率再高一丢丢。1、IF函数条件判断IF函数是最常用的判断类函数之一,能完成非此即彼的判断。如下图,考核得分的标准为9分,要判断B列的考核成绩是否合格。=IF(B4>=9,&...

一堆Excel快捷键,这个才是南波万

一堆Excel快捷键,这个才是南波万

Excel中的快捷键实在是太多太多了,你觉会得哪个快捷键最厉害呢?如果有机会让我来给他们排名,我一定要把CTRL+T排在第一位。 让我们来看看它有多牛。 功能1.一键美化。之前的表格是这样子的。按下CTRL+T之后:标题...

八个公式真简单,月薪少说三千三

八个公式真简单,月薪少说三千三

小伙伴们好啊,今天和大家分享一组常用的函数套路,小伙伴们遇到类似问题可以直接拿来套用即可。1、IF函数用来完成非此即彼的判断。如下图,要判断成绩是否合格。公式:=IF(C2>=60,"及格","不及格")用法...

EXCEL如何计算两个年份间的年数,月数和天数差

EXCEL如何计算两个年份间的年数,月数和天数差

在EXCEL中,我们如果要求两个年份间的年数,月数和天数差,可以用到"DATEDIF"函数,那么具体怎么操作呢?请看如下操作。 方法/步骤 首先,打开需要编辑的数据表,输入你要编辑的数据,点击年数单元格; 在菜单栏点击"公式...

Excel超强大的“切片器”功能,还有人不知道吗?

Excel超强大的“切片器”功能,还有人不知道吗?

今天,跟大家分享一个实用的功能“切片器”,它不仅可以分析数据,而且非常美观。如果你还没有用过,那就跟我一起来看看吧!1转换表格在使用切片器之前,我们需要先将普通的表格转换为超级表,普通表格是无法开启“切片器”的,只...

Excel制作带进度条的日程安排表!

Excel制作带进度条的日程安排表!

今天,教大家制作一份好看的日程安排表,一起来看看吧!1准备工作表格中添加一些内容。然后改成这样。2开始制作01.首先,点开「开发工具」-「插入」-「复选框(窗体控件)」,在每行「状态」中插入,然后删其中的文字内容。...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。