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

就是我做身份证表格,就是想用函数MID(你懂)提取出生日期,结果,单元格左上角的绿三角形没有了,我又改单元格的格式的锁定,把锁定勾去掉,绿三角又有了,以为没事了,后来输入系统(农村养老保险表格),说出生格式错误什么的,5000多啊,真不知道咋办,哪位高手告诉小弟我啊?一定追加,小弟我可是第一次工作啊

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

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”代表的是输入身份证号码的单元格。

参考资料:http://hi.baidu.com/zlbqjx/blog/item/cd82d139ff5c27f93a87cedc.html

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-07-16
这个公式女","男"写反了。应为:
=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,则值为“女”(返回假值)。
第2个回答  2019-12-31
急!!
=mid(a1,7,4)
=mid(a1,11,2)
=mid(a1,13,2)
更多你这是一个用身份证提取出生年月日的公式,其实,你知道用这两个函数了就
第3个回答  2011-07-16
mid函数出来是文本的,你要=VALUE(TEXT(MID(A1,7,8),"####-##-##")),再设格式为日期就行了
第4个回答  2011-07-16
假如身份证号在A2单元格中,公式为:
=MID(A2,7,4)&"-"&MID(A2,11,2)&"-"&MID(A2,13,2)
即可提出“出生日期”
相似回答