在EXCEL函数中,IF LEN B2 15,19MID B2,7,6 LEN B2 18 2

2021-03-31 22:37:59 字数 7640 阅读 2721

1楼:匿名用户

“if(len(b2)=15,19,"")”的意思是:如果“b2”单元格中的字符串长度=15,当前单元格的值就=19,否则就等于空值。

“mid(b2,7,6)”的意思就是:从“b2”字符串的第7为开始截取6个字符为一个字符串。

“&”的意思一般情况下是用于把两个字符串连接起来组成一个新的字符串,属于字符串运算符号(比如ab&cd=abcd)。

你上面的公式设置好像是想从身份证编号中提取出生年月日信息,但公式好像有点不对,你再好好研究研究,或者上网查以下以上两个函数的具体使用方法看看。

2楼:苗乔恩

if(len(b2)=15,19,"")的意思是,如果b2的长度等于15,则返回19,否则返回空值;

“&”是连接符,起到连接前后两部分字符串的作用。

3楼:朱荟非

整个公式的意思,对b2单元格的身份证号码,从第7位开始取出生日期。如果身份证是18位的,就取8位数代表出生日期;如果是15位,就取6位,并在前面加上“19”。

公式的精华在+(len(b2)=18)*2,将需要分别处理的截取长度,用判断式len(b2)=18来表达,判断式给出的值无非是0和1(或者false、true),可以作为数值运算,得出的结果为0或2。

整个公式和

=if(len(b2)=15,"19"&mid(b2,7,6),mid(b2,7,8))意思是一样的

当然严谨一点可以写成:

=if(len(b2)=15,"19"&mid(b2,7,6),if(len(b2)=18,mid(b2,7,8),"号码有误"))

&表示连接前后两个字符串,比如a1="我爱",a2="中国",那么公式=a1&a2就会显示结果"我爱中国"

&没有“同时,并且”的意思,那是and()函数的作用

4楼:匿名用户

b2的长度是15,那就显示19,否则就空白&是强制连接符 .

任意数值 文本连接起来显示 其格式变成文本此时不可以作为数字运算

总的就是15位身份证显示 19再加6位数的出身年月日18位身份证前面加第七位开始的8位的出身年月日

5楼:瞧字不识

感觉应该是从身份证号码中提取日期,那么就应该写成:

=if(len(b2)=15,19&mid(b2,7,6),mid(b2,7,8))

6楼:紫色鱼鱼

如果 b2的长度是15,那就显示19,否则就空白

&是连接符

excel老师出的 =if(mod(mid(b2,(len(b2)=18)*2+15,1),2),"男","女") 谁能告诉我 这行**的意思是什么

7楼:匿名用户

判断身份证信息是男还是女

(len(b2)=18)*2+15

这段返回一个数据

如果b2的号码是18位,就得2+15

如果b2的号码不是18位,就得0+15

把这个数据代入mid函数

mid(b2,(len(b2)=18)*2+15,1)即mid(b2,17,1)

返回第17位的号码0~9

再代入到mod函数算余数

mod(mid(b2,(len(b2)=18)*2+15,1),2)任何数除以2的余数,就只是0,1

偶数除以2,余0,奇数除以2,余1

再代入if函数

如果余数为1时,返回"男",否则返回"女"

你的公式中的mod是多余的

身份证判断男女,最简约公式

适用15位和18位

=if(mod(mid(a1,15,3),2),"男","女")

8楼:囗

应该是用来根据身份证号码判断性别的

谁会excel啊,我用函数mid(a1,7,8)提取身份证中的出生日期,后来将**导入系统,说出生日期格式错误

9楼:匿名用户

【身份证号判断性别的方法】

18位的看倒数第二位,奇男偶女;

15位的看倒数第一位,奇男偶女。

假如:身份证所在的列为c2

首先要判断该身份证的长度,在excel中使用len函数来获取len(c2)

如果是18位的就取第17位,即倒数第二位,excel中使用mid函数还获取指定位置开始,指定长度的字符串,如果是15位的就去最后一位也就是第15位

=if(len(c2)=15,mid(c2,15,1),mid(c2,17,1))

获取到这个数后,再判断该数是奇数还是偶数就可以得出性别了,excel中使用mod函数实现

=if(mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2)=1,"男","女")

获取年龄的函数如下:

=datedif(text((len(c2)=15)*19&mid(c2,7,6+(len(c2)=18)*2),"00-00-00"),today(),"y" )

在excel中根据身份证号码自动生成出生生日期和性别

根据身份证号码自动生成出生生日期

方法一:

15位身份证号:410881790605552 输出出生日期1979/06/05 =concatenate("19",mid(e2,7,2),"/",mid(e2,9,2),"/",mid(e2,11,2))

公式解释:

a.mid(e2,7,2)为在身份证号码中获取表示年份的数字的字符串

b. mid(e2,9,2) 为在身份证号码中获取表示月份的数字的字符串

c. mid(e2,11,2) 为在身份证号码中获取表示日期的数字的字符串

d.concatenate("19",mid(e2,7,2),"/",mid(e2,9,2),"/",mid(e2,11,2))目的就是将多个字符串合并在一起显示。

18位身份证号:410881197906055521 输出出生日期1979/06/05 =concatenate(mid(e2,7,4),"/",mid(e2,11,2),"/",mid(e2,13,2))

方法二:

15位身份证号:410881790605552 出生日期790605 =if(len(e3)=15,mid(e3,7,6),mid(e3,9,6))

18位身份证号:410881197906055521 出生日期790605 =if(len(e3)=15,mid(e3,7,6),mid(e3,9,6))

公式解释:

len(e2)=15:检查e2单元格中字符串的字符数目,本例的含义是检查身份证号码的长度是否是15位。

mid(e2,7,6):从e2单元格中字符串的第7位开始提取6位数字,本例中表示提取15位身份证号码的第7、8、9、10、11、12位数字。

mid(e2,9,6):从c2单元格中字符串的第9位开始提取6位数字,本例中表示提取18位身份证号码的第9、10、11、12、13、14位数字。

=if(len(e2)=15,mid(e2,7,6),mid(e2,9,6)):if是一个逻辑判断函数,表示如果额e2单元格是15位,则提取第7位开始的6位数字,如果不是15位则提取自第9位开始的6位数字。

根据身份证号码自动生成性别:

方法一:

在c列输入身份证号,在b列填写性别,可以在b2单元格中输入公式“=if(mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2)=1,"男","女")”,其中:

len(c2)=15:检查身份证号码的长度是否是15位。

mid(c2,15,1):如果身份证号码的长度是15位,那么提取第15位的数字。

mid(c2,17,1):如果身份证号码的长度不是15位,即18位身份证号码,那么应该提取第17位的数字。

mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2):用于得到给出数字除以指定数字后的余数,本例表示对提出来的数值除以2以后所得到的余数。

if(mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2)=1,"男","女"):如果除以2以后的余数是1,那么b2单元格显示为“男”,否则显示为“女”。

15位身份证,看最后一位,奇男偶女;18位的,看第17位数,也是奇男偶女。

方法二:

如果你是想在excel**中,从输入的身份证号码内让系统自动提取性别,可以输入以下公式:

=if(len(c2)=15,if(mod(mid(c2,15,1),2)=1,"男","女"),if(mod(mid(c2,17,1),2)=1,"男","女"))

公式内的“c2”代表的是输入身份证号码的单元格。

10楼:匿名用户

这个公式女","男"写反了。应为:

=if(mid(d3,17,1)/2=trunc(mid(d3,17,1)/2),"女","男")

这是运用if函数,对数值和公式进行条件检测,即如果mid(d3,17,1)/2等于trunc(mid(d3,17,1)/2),则返回真值(“女”),反之,如果mid(d3,17,1)/2不等于trunc(mid(d3,17,1)/2),则返回假值(“男”)。

这个公式的思路是:

根据18位身份证的第17位的奇偶来判断男女性别。第17位数除以2,如果是奇数,则会出现小数,然后用trunc截去小数,这个值就不等于第17位数除以2。如果是偶数,除以2后,仍然等于截去小数后的值。

此外,还有其它许多方法。例如:

=if(mod(mid(d3,17),2),"男","女")

即求第17位数除以2的余数,如果余数为1,则值为“男”(返回真值);否则,如果余数不为1,则值为“女”(返回假值)。

11楼:匿名用户

mid函数出来是文本的,你要=value(text(mid(a1,7,8),"####-##-##")),再设格式为日期就行了

12楼:匿名用户

1.将提取出来的结果复制下,然后右击选择 "选择性粘贴"的"数值",就可以了。

2.或者,将提取出来的结果复制下,粘贴到txt 文件中,然后再复制粘贴也可以。

粘贴前记得把单元格的格式改为文本格式 。

13楼:北京的灵猫

假如身份证号在a2单元格中,公式为:

=mid(a2,7,4)&"-"&mid(a2,11,2)&"-"&mid(a2,13,2)

即可提出“出生日期”

14楼:桓秋芹岑午

急!!=mid(a1,7,4)

=mid(a1,11,2)

=mid(a1,13,2)

更多你这是一个用身份证提取出生年月日的公式,其实,你知道用这两个函数了就

excel用函数mid(a1,7,8)提取身份证中的出生日期,导入系统,说格式错误怎么办?

15楼:匿名用户

【身份证号判断性别的方法】

18位的看倒数第二位,奇男偶女;

15位的看倒数第一位,奇男偶女。

假如:身份证所在的列为c2

首先要判断该身份证的长度,在excel中使用len函数来获取len(c2)

如果是18位的就取第17位,即倒数第二位,excel中使用mid函数还获取指定位置开始,指定长度的字符串,如果是15位的就去最后一位也就是第15位

=if(len(c2)=15,mid(c2,15,1),mid(c2,17,1))

获取到这个数后,再判断该数是奇数还是偶数就可以得出性别了,excel中使用mod函数实现

=if(mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2)=1,"男","女")

获取年龄的函数如下:

=datedif(text((len(c2)=15)*19&mid(c2,7,6+(len(c2)=18)*2),"00-00-00"),today(),"y" )

在excel中根据身份证号码自动生成出生生日期和性别

根据身份证号码自动生成出生生日期

方法一:

15位身份证号:410881790605552 输出出生日期1979/06/05 =concatenate("19",mid(e2,7,2),"/",mid(e2,9,2),"/",mid(e2,11,2))

公式解释:

a.mid(e2,7,2)为在身份证号码中获取表示年份的数字的字符串

b. mid(e2,9,2) 为在身份证号码中获取表示月份的数字的字符串

c. mid(e2,11,2) 为在身份证号码中获取表示日期的数字的字符串

d.concatenate("19",mid(e2,7,2),"/",mid(e2,9,2),"/",mid(e2,11,2))目的就是将多个字符串合并在一起显示。

18位身份证号:410881197906055521 输出出生日期1979/06/05 =concatenate(mid(e2,7,4),"/",mid(e2,11,2),"/",mid(e2,13,2))

方法二:

15位身份证号:410881790605552 出生日期790605 =if(len(e3)=15,mid(e3,7,6),mid(e3,9,6))

18位身份证号:410881197906055521 出生日期790605 =if(len(e3)=15,mid(e3,7,6),mid(e3,9,6))

公式解释:

len(e2)=15:检查e2单元格中字符串的字符数目,本例的含义是检查身份证号码的长度是否是15位。

mid(e2,7,6):从e2单元格中字符串的第7位开始提取6位数字,本例中表示提取15位身份证号码的第7、8、9、10、11、12位数字。

mid(e2,9,6):从c2单元格中字符串的第9位开始提取6位数字,本例中表示提取18位身份证号码的第9、10、11、12、13、14位数字。

=if(len(e2)=15,mid(e2,7,6),mid(e2,9,6)):if是一个逻辑判断函数,表示如果额e2单元格是15位,则提取第7位开始的6位数字,如果不是15位则提取自第9位开始的6位数字。

根据身份证号码自动生成性别:

方法一:

在c列输入身份证号,在b列填写性别,可以在b2单元格中输入公式“=if(mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2)=1,"男","女")”,其中:

len(c2)=15:检查身份证号码的长度是否是15位。

mid(c2,15,1):如果身份证号码的长度是15位,那么提取第15位的数字。

mid(c2,17,1):如果身份证号码的长度不是15位,即18位身份证号码,那么应该提取第17位的数字。

mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2):用于得到给出数字除以指定数字后的余数,本例表示对提出来的数值除以2以后所得到的余数。

if(mod(if(len(c2)=15,mid(c2,15,1),mid(c2,17,1)),2)=1,"男","女"):如果除以2以后的余数是1,那么b2单元格显示为“男”,否则显示为“女”。

15位身份证,看最后一位,奇男偶女;18位的,看第17位数,也是奇男偶女。

方法二:

如果你是想在excel**中,从输入的身份证号码内让系统自动提取性别,可以输入以下公式:

=if(len(c2)=15,if(mod(mid(c2,15,1),2)=1,"男","女"),if(mod(mid(c2,17,1),2)=1,"男","女"))

公式内的“c2”代表的是输入身份证号码的单元格。