以文本方式查看主题

-  易表在线答疑  (http://egrid2000.com/dvbbs/index.asp)
--  用户社区  (http://egrid2000.com/dvbbs/list.asp?boardid=2)
----  如何通过身份证号读出出生年份?  (http://egrid2000.com/dvbbs/dispbbs.asp?boardid=2&id=27458)

--  作者:newuser
--  发布时间:2014/9/21 8:44:00
--  如何通过身份证号读出出生年份?
 表中有2列:身份证号  出生年份,请问,出生年份的刷新公式如何设置,可以通过身份证号列读出出生年份?请大侠指点
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:111.egd


--  作者:newuser
--  发布时间:2014/9/21 8:49:00
--  
 我可以通过新增一列,出生日期(ReadBirthDay([身份证号]))读出出生日期,在通过year([出生日期])读出出生年份,但是这未免有蛇足之嫌。请大侠指教如何直接读出。多谢。
--  作者:wjq1072
--  发布时间:2014/9/21 9:38:00
--  
Eval("Split("""+Text(ReadBirthDay([身份证号]))+""",""-"",1)")
--  作者:newuser
--  发布时间:2014/9/21 22:37:00
--  
 多谢大侠指教!
--  作者:qmarfkfv
--  发布时间:2014/9/26 14:29:00
--  


--  作者:iyplx2425
--  发布时间:2014/9/29 8:52:00
--  
如果只是需要显示出生年份,用:Mid([身份证号],6,4)就可以了。如果考虑到新旧身份证两种不同位数,加个IF()函数就可以了。
--  作者:newuser
--  发布时间:2014/10/16 21:10:00
--  
 If(Len([身份证号]) = 15,Mid([身份证号],6,2),Mid([身份证号],6,4))
如果使用这个函数刷新公式,对于15位的身份证号只能返回两位数,如何让返回的数字是四位数?请帮忙修改一下。

--  作者:dancedy
--  发布时间:2014/10/17 8:38:00
--  

不用新增列,直接用这个公式 :Years(ReadBirthDay([身份证号])) ,免去判断


--  作者:newuser
--  发布时间:2014/10/17 10:58:00
--  
 不能用years函数,要求返回的是出生年,不是年龄。
--  作者:dancedy
--  发布时间:2014/10/17 11:06:00
--  
看错,这个:Year(date(ReadBirthDay([身份证号])))