excel中如何使用mid函数
MID函数是Excel中常用的字符串提取函数,它可以从字符串中指定的位置开始从左往右截取指定的字符个数
首先,进入到Excel中后,大家可以自己简单的制作一个素材表格,作为使用MID函数的参考数据
接下来,素材表格的右侧一个单元格内输入mid的函数,可以看到mid函数后方可以有3个输入条件。
第一个是条件的选择单元格,我们这里以选择E3单元格为例子。选中E3单元格
然后系统会自动输入E3,接着我们需要在后面打上”,“符号,来表示进入下一个输入的内容,第二个 star num 是指显示的数字位数。
输入完毕后,继续打上”,“来表示分割,最后需要输入的数字则是显示单元格的位数,如果要全部显示的话,随便输入一个大于单元格内容的数字就可以了。
最后,在mid函数的区域就可以显示出我们需要调整显示的数据了,如果把开始位数调整为2,相对的,显示的内容就会自动做出调整
以上就是excel的mid函数使用方法介绍,操作很简单的,大家按照上面步骤进行操作即可,希望这篇文章能对大家有所帮助!
MID函数怎么用?这五个方法你不能错过
我们在Excel中录入数据的时候,也需要截取表格中的一些数据。这里我们就可以借助MID函数截取表格中的数据。那么MID函数怎么用呢?相信还有很多人不知道。那就仔细看看下面的介绍吧,以后肯定会用的到的。
知识拓展:MID中的TEXT表示字符的位置,Start_num表示第几个字符,NUM_chars表示字符串长度。
一、截取字符
在B2中截取身份证中的年月日,在单元格B2插入MID函数。然后在函数参数界面的Text中输入[A2],在Start_num中输入[7],NUM_chars中输入[8],点击确定就可以了。
二、配合IF函数使用
在B2中判断A1中编号对应的员工性别。在单元格B2中插入函数IF函数,在函数参数界面的Logical_test中输入MID(A1,3,2)=“01”Value_true中输入[男],点击确定就可以了,“默认编号第三字符到第四个字符为02的员工为男性”。
三、配合TEXT函数使用
截取身份证号中的年月日并设置格式,在单元格B2中插入TEXT函数。然后在函数参数界面的Value中输入[MID(A1,7,8)],在Format_text 中输入 [ “0000-00-00” ],然后点击确定就可以了。
四、配合LEN函数使用
反向截取A1中人名,在单元格B2中插入MID函数。然后在函数参数界面的Text中输入[A1],在Start_num输入[LEN(A1)-3+1],在NUM_chars中输入[3],然后点击确定就可以了。
五、配合FIND函数使用
截取A1中的人物名称,在单元格B2中插入MID函数。然后在函数参数界面的TEXT中输入[A1],在在Start_num输入[FIND(“(”A1)+1],在NUM_chars中输入[3],然后点击确定就可以了。
以上就是MID在Excel中的五种用法,大家在录入数据的时候可以试着这样截取数据。
excel这个复杂数组公式怎么读?
{=COUNT(FIND(MID(B2,ROW($1:$10),1),A2))=10}
数据间的包含关系是Excel函数中的常见问题之一,通常的解法都是利用文本查找函数,如SEARCH函数、FIND函数等等。举个例子,我们要判断子集字符串AB是否被全集字符串ABC所包含,我们会这样做:
但你知道吗?这些解决方案都有一个共同的致命弱点,那就是有序包含。即子集中各字符串的排列顺序必须和全集字符串一致,顺序不一致就无法成功匹配。例如,A和B都被ABC所包含,但是,AB和BA的FIND返回值却大相径庭。
小花的一名资深粉丝就曾提出了这样一个问题:如何破解这种乱序包含呢?答案就在下图中。这个由四个函数嵌套而成的古怪公式,竟然解决了这个疑难杂症!!!
C2公式如下:
{=COUNT(FIND(MID(B2,ROW($1:$10),1),A2))=10}
当我给出这样的答案时,这位花瓣立刻犯了难,这个公式虽然功能强大,但却包含多重嵌套和复杂运算逻辑,让人捉摸不透!别急,且听小花细细分解。
STEP 01 公式分割
复杂公式是一口吞不下的大蛋糕,那就让我们分而食之。根据函数名称和特定符号来分割公式是学习复杂函数的第一步。将复杂公式分割成一个个实现特定功能的小片段,能帮助我们更好地消化理解。
ps:这里提到的特定符号包含划分函数各参数的逗号,表示优先计算序的括号,比较运算符<>=等。
接下来让我们来试着分割下这个复杂公式。
STEP 02 各个击破
上图中我们将公式划分成五个独立的小片段,这一步我们就来逐一解读每一部分的运算逻辑和目标功能。
① {}
大括号{}是数组公式的标志,正常输入函数后,立即按Ctrl+ Shift+Enter即可进行数组运算。数组公式可以认为是多个相同结构函数公式的集合,数组公式中的公式按重复的运算方法、次序和逻辑重复运算多次,即数组运算的返回值是一组数,而非单一值。
这可能很难理解,没关系,在接下来的讲解中我们还是穿插讲解数组运算的原理。
② ROW($1:$10)
ROW函数是返回单元格行号的简单函数,它的基本语句是= ROW(要返回行号的单元格),ROW(A1)=1, ROW(A2)=2。1:10表示第一行到第十行(具体所需行数是乱序字符串的最大字符数而定),那么片段②ROW($1:$10)则返回1:10行的行号,即
ROW($1:$10)={1,2,3,4,5,6,7,8,9,10}
这就是数组运算的魔力,原本仅能返回单一值的ROW函数,此时可以对每一个参数进行运算,并逐一返回结果,形成一组数。数组公式中的其他片段同此理。
③ MID(B2, ②,1)
MID函数是从字符串的某一个字符开始,截取指定个数字符的函数。它的基本语句是MID(目标字符串,截取的起始位置,截取的字符个数)。举个例子,MID(\”秋叶Excel\”,3,5),它是从第3个字符串E开始,截取5个字符,即为Excel,如图。
于是乎,我们解开了③的功能之谜,即从B2中取一个字符。紧接着,我们将MID与ROW函数结合,即从B2单元格的第1到10个字符开始,各取1个字符,这样我们就能将B2中的每一个字符逐一拆分开来。那么问题来了,如果B2的字符个数不足10个,会怎么样。简单,不足部分即为空,所以截取结果也为空。
那么片段③的返回结果是由B2的每一个字符和空值组成的数组a。
MID(B2, ②,1)={T,Y,E,B,,,,,,}
④FIND(③,A2)
这个片段是数组函数的核心。FIND函数的基本语句是FIND(要查找的子集字符串,包含子集的全集子符串)。FIND函数可以将③返回的每一个字符都在A2字符串中匹配查找,如果A2包含该字符,则返回≥1的序数值,不包含则返回# VALUE!。
这里有一个特殊情况,那就是片段③返回结果中的多余空值。有趣的是,这些多余空值并不会影响FIND的匹配,因为FIND(空值,目标字符串)始终返回1。
因此,只有当B2中的某个字符不包含在A2中,FIND函数才返回错误值,其余情况均返回指定序数值。即,片段④返回结果为10个由正整数或# VALUE!组成的一维数组b。
FIND(③, A2)={8,7,…# VALUE,…1,1,…}
⑤COUNT(④)=10
COUNT函数是返回数值型数字个数的计数函数,它在计数过程中,仅对数值进行计数,自动忽略错误值、文本、逻辑值和空值。我们正是利用了COUNT函数忽略错误值这一特性,使得片段COUNT(④)返回④中序数值的个数。当且仅当④中含有# VALUE!,计数结果小于10,其余情况下,计数结果都等于10。紧接着,我们用=10来做一个逻辑判断,计数结果等于10返回TRUE,否则返回FALSE。
也就说,只有当B2中不包含A2字符串以外的字符,FIND函数才不会返回错误值# VALUE!,此时COUNT计数结果才能等于10,逻辑判断才能为TRUE。
STEP 03 复盘全局
分析理解了各个片段的过程,我们需要再将这些逻辑运算片段串联起来,形成完成的计算逻辑。让我们结合流程图来回顾下求解过程。
1,利用ROW函数返回一组1到n的有序数组;
2,利用MID函数进行颗粒化,将子集字符串拆分成多个单一字符或空值组成的1* n的数组a;
3,利用FIND函数逐一匹配数组a中的每一个字符在全集字符串中出现的位置,返回一组由正整数和错误值组成的1*n的数组b;
4,利用COUNT函数忽略错误值计数的特点,通过判断计数结果是否为n来推断子集中是否包含全集字符串以外的字符,从而完成乱序包含问题的求解。
C2的公式计算过程如下
C3的公式计算过程如下
以上,就是复杂的COUNT+ FIND+ MID+ ROW嵌套数组公式的详细讲解。或许公式本身并不常见,但是其中蕴含的运算逻辑却经常被运用。纵观当下Excel教程文章,热衷于分享各式函数用法的,车载斗量;而真正认真讲解各中道理的却寥若晨星。
本文作者及来源:Renderbus瑞云渲染农场https://www.renderbus.com
文章为作者独立观点不代本网立场,未经允许不得转载。