自从新冠肺炎疫情发生以来,给人们的生活带来了很大的影响。为了尽快展示疫情,伟大的祖国给我们提供了免费的疫苗进行接种。
每个接种疫苗的朋友都知道,我们接种疫苗是按照年龄阶段分批次进行的。首先接种的是18-59周岁人群,其次将年龄降低到了12周岁,最后接种的是3-11周岁的儿童和老年人群。
那如何才能准确掌握每个人是哪个批次接种的呢?这就用到了我们今天要介绍的内容:EXCEL中文本的提取。
今天主要跟大家交流一下以下几个文本提取的公式:
1.LEFT/LEFTB从一个文本字符串的第一个字符开始,截取指定数目的字符/字节
2.RIGHT/RIGHTB从一个文本字符串的最后一个字符开始,截取指定数目的字符/字节
3.MID/MIDB从一个文本字符串的指定位置开始,截取指定数目的字符/字节
首先需要说明的是,字符和字节的关系:1个字节=2个字符。每个数字、字母占一个字符,每个中文汉字占一个字节,所以提取数字、字母一般用字符提取,汉字一般用字节提取。
一、LEFT/LEFTB
LEFT(text,num_chars),LEFTB(text,num_bytes)
text,要提取的文本单元格
num_chars,要提取的文本字符数
num_bytes,要提取的文本字节数
今天公式的用法,我们主要以身份证号举例。大家都知道身份证号有18位,但很多人不知道每一位数字的意思,第1、2位数字表示:所在省份的代码;第3、4位数字表示:所在城市的代码;第5、6位数字表示:所在区县的代码。
所以,通过提取身份证号前六位数字,我们就可以知道这个人所属的行政区划位置,下面就介绍公式的用法:
图1 从左开始提取文本
二、RIGHT/RIGHTB
RIGHT(text,num_chars),RIGHTB(text,num_bytes)
text,要提取的文本单元格
num_chars,要提取的文本字符数
num_bytes,要提取的文本字节数
还是以身份证举例,比如我们的社保卡,初始密码一般为身份证后六位数字,在批量提取的时候就可以用到从右侧提取公式。
图2 从右开始提取文本
三、MID/MIDB
MID(text,start_num,num_chars),MIDB(text,start_num,num_bytes)
text,要提取的文本单元格
start_num,从第几个字符开始提取
num_chars,一共提取几个字符
num_bytes,一共提取几个字节
此处,我们就用到了出生年份的提取,来进一步计算出年龄。
图3 从中间开始提取文本
出生年份是提取出来了,但是我们需要的是年龄,怎么办呢?这时,我们就可以配合减法公式进行计算。比如今年是2022年,可以用下图公式计算年龄:
图4 年龄计算
但是,这种方法只适用于2022年,如果到了2023年,就必须对公式进行调整,比较繁琐。怎么实现不管哪一年打开,都是正确的年龄呢?我们可以配合TODAY函数和YEAR函数使用。
TODAY函数会自动获取计算机时间(年月日),YEAR函数会提取年月日中的年份。
图5 实时年龄计算
字节的提取和字符提取功能类似,此处不再详细介绍,感兴趣的朋友可以尝试一下。