excl表示带括号的公式(EXCL公式入门八MID)(1)

最近总是需要用EXCL提取数据,就顺便学习一下MID和MIDB这两个函数吧,这两个函数的作用都是从一个字符串中截取出指定数量的字符。

首先来看看这两个函数的三个参数

1、 TEXT,就是一个字符串(也可以指向某个单元格,即地址)。

2、 String text,指你需要截取的字符的位置(可以是一个数字,也可以是一串你需要从其他地方获取的数值的计算公式,或者指向其他单元格)

3、 Length num_chars,你需要截取的字符的长度,道理同上。

再来了解一下函数的基本用法:

我们在单元格里输入下面,第一个参数随便写一下

=MID("你好111,欢迎",2,4)

结果是:好111

excl表示带括号的公式(EXCL公式入门八MID)(2)

根据上面函数的意思,这个语句的意思就是从"你好111,欢迎"这个字符串里的第2个字符的位置,向后截取4个字符的一个字符串,是不是很好理解。

这个函数和MID函数意思是一样的,但是,MIDB与MID有微小的区别,使用一下看一看。

同样的,我们在单元格里输入下面,整个语句同上。

=MIDB("你好111,欢迎",2,4)

结果是:好1

excl表示带括号的公式(EXCL公式入门八MID)(3)

两个函数的结果不一样,我们来找一下原因,来看一下系统里对这两个函数的介绍:

excl表示带括号的公式(EXCL公式入门八MID)(4)

excl表示带括号的公式(EXCL公式入门八MID)(5)

MIDB里介绍说与双字节字符集一起使用字符串,那什么是双字节呢?查了一下,我们的中文其实都是双字节,就是一个字占两个字符。

那在第二个函数中的意思就是从"你"这个字符的一半开始截取,往后共四位,那显示出来的就只有3个字符。但"好"字又占了两个字符,所以结果就成了"好1"。

接下来可以多试几个字符串,看看这两个函数的对比。

excl表示带括号的公式(EXCL公式入门八MID)(6)

根据上图的显示我们可以看到,最后输的标点符号如果是在中文状态下输的,那也是占两个字符的,但数字始终是只占一个字符的,在以后运用到实际中可以根据需要选择用哪一个函数。


上个实例吧:如图我们知道一个人的身份证,想从身份证中提取他的生日和性别,就可以用到MID函数。

excl表示带括号的公式(EXCL公式入门八MID)(7)

=MID(D3,7,8)

看看结果

excl表示带括号的公式(EXCL公式入门八MID)(8)

虽然提取出来了,但是不是看着很不显明,这里就要用到前面说的TEXT函数了。

回忆一下TEXT函数,TEXT函数是将数值转换为按指定数字格式表示的文本。那正好这里我们就把我们提取出来的数字换成更清楚的日期模式,公式如下:

=TEXT(MID(D3,7,8),"0000-00-00")

往下拉,看看结果

excl表示带括号的公式(EXCL公式入门八MID)(9)

这里的0000-00-00是TEXT里参数的一个常用代码,大家可以自己去查一查,这个参数的代码比较多,刚好这个日期的比较常用,咱们记着就行。

为什么要用到余数,大家可以仔细了解一下身份证号的规则,身份证号里不止隐藏了一个人的生日,还有地区和性别的,当身份证第17位是个单数,就是男,双数为女。

那这个性别就可以看成第17位除以2,如果余数为1,那就是男,如果余数为0,就是女。

那接下来就要用到公式了:

=IF(MOD(MID(D3,17,1),2)=1,"男","女")

看看结果

excl表示带括号的公式(EXCL公式入门八MID)(10)

因为前面17位不小心都打成了双数,就补个单数看下效果。

这个公式MID公式的结果是作为MOD的第一个参数,整个MOD函数又是作为IF函数第一个参数的部分,就是MOD函数的结果如果等于1,那就是男,否则就是女。

IF函数在前面也讲到过,就是一个判断真假,真的就怎么样,否则就怎么样。

那如果MOD函数的结果是1,相当于MID里提取的这个数除以2余1,也就是提取的这个数是单数,那IF里1=1就是真的,那这个人就是男的,不然就是女的。

至于其他的根据身份证号查省啊,区啊的大家可以自己去搜一下规则了试一下,这是一个很简单常用的实例,实例工作中运用到这个函数也很多。

好了,今天就学到这里,下次继续。

,