access用身份证号码计算年龄 access身份证号码或出生日期为空时换算性别,年龄错误

作者&投稿:竹备 (若有异议请与网页底部的电邮联系)

1、首先,打开access创建空白数据库,在数据库中建表并插入数据。

2、选择菜单栏中的“创建”,选择“查询设计”按钮。弹出“显示表”窗口。

3、选中“表1”,点击“添加”按钮。

3、在查询设计网格第一列的字段行点击鼠标右键,选择“生成器”选项,打开<表达式生成器>对话框,在对话框中输入表达式“m_age: Max([年龄])-Min([年龄])”,点击“确定”按钮。

4、单击<查询工具>选项卡中<结果>命令组的“数据表视图”命令查看查询结果。

5、最终查询结果如下图。



1、首先,打开需要的Excel表格。

2、在年龄输入单元格内直接输入公式“=YEAR(TODAY())-MID(A2,7,4)”。

3、按下回车键,年龄即可得出。

4、然后鼠标选择刚刚得出结果的单元格,鼠标箭头移动到单元格右下角,直到箭头变为十字符号。

5、鼠标左键向下拉动,之后的年龄就都出来了。



如果都是18位身份证号码,这样写:
SELECT *,
datediff("yyyy",cdate(mid(身份证号码,7,4) & "-" & mid(身份证号码,11,2) & "-" & mid(身份证号码,13,2)),date()) as 年龄
from 员工信息表;

18位和15位混用,则还要复杂些:
SELECT *,
iif(len(身份证号码)=18,datediff("yyyy",cdate(mid(身份证号码,7,4) & "-" & mid(身份证号码,11,2) & "-" & mid(身份证号码,13,2)),date()),
datediff("yyyy",cdate(mid(身份证号码,7,2) & "-" & mid(身份证号码,9,2) & "-" & mid(身份证号码,11,2)),date()))
AS 年龄 FROM 员工信息表;

注意:身份证号码必须正确才能查出准确年龄

如何用Access 计算身份证年月日~

在"身份证号"的"更新后"事件中写入:

If Len(Me![身份证号]) = 18 Then
Me![出生日期] = DateSerial(Mid(Trim(Me![身份证号]), 7, 4), Mid(Trim(Me![身份证号]), 11, 2), Mid(Trim(Me![身份证号]), 13, 2))
Else
Me![出生日期] = DateSerial(1900 + Mid(Trim(Me![身份证号]), 7, 2), Mid(Trim(Me![身份证号]), 9, 2), Mid(Trim(Me![身份证号]), 11, 2))
End If

那你就先判断一下啊,判断当居民身份证号码为空时返回一个什么值。你那取位函数可以给个条件啊,当身份证是空时他是个什么数,不是时他是取位数。用IIF()函数啊
IIF(居民身份证号 IS NULL,DAY(date()),MID(身份证号),7,2)
因为身份证号字段类型未必和DATE一样

access用身份证号码计算年龄
答:3、在查询设计网格第一列的字段行点击鼠标右键,选择“生成器”选项,打开<表达式生成器>对话框,在对话框中输入表达式“m_age: Max([年龄])-Min([年龄])”,点击“确定”按钮。4、单击<查询工具>选项卡中<结果>命令组的“数据表视图”命令查看查询结果。5、最终查询结果如下图。

access用身份证号码计算年龄
答:1、首先,打开需要的Excel表格。2、在年龄输入单元格内直接输入公式“=YEAR(TODAY())-MID(A2,7,4)”。3、按下回车键,年龄即可得出。4、然后鼠标选择刚刚得出结果的单元格,鼠标箭头移动到单元格右下角,直到箭头变为十字符号。5、鼠标左键向下拉动,之后的年龄就都出来了。

Access计算根据"身份证号码"字段计算年龄和性别的表达式,最好是还能...
答:If Len(身份证号码) = 15 Then xbstr = Right(Trim(身份证号码), 1)出生日期.Value = Mid(身份证号码, 7, 2) & "-" & Mid(身份证号码, 9, 2) & "-" & Mid(身份证号码, 11, 2)Else If Len(身份证号码) = 18 Then xbstr = Mid(身份证号码, 17, 1)出生日期.Value = Mid...

如何用Access 计算身份证年月日
答:If Len(Me![身份证号]) = 18 Then Me![出生日期] = DateSerial(Mid(Trim(Me![身份证号]), 7, 4), Mid(Trim(Me![身份证号]), 11, 2), Mid(Trim(Me![身份证号]), 13, 2))Else Me![出生日期] = DateSerial(1900 + Mid(Trim(Me![身份证号]), 7, 2), Mid(Trim(Me![...

access有身份证号码,如何筛选性别和年月日
答:1、身份证分一代、二代,一代是15位数,二代是18位数;2、两代身份证均是以国家行政区划代码开头,即前面6位,分别是身份证持有人所在省、市、县,每级2位);3、两代身份证第7位开始都是持有人的生日。不同的是一代为6位,二代为8位。(因为一代遇到了千年虫问题,所以现在都改用二代了。

access 查询 抽出身份证表示出生日期的数字
答:截取取字符串,但前提是所有身份证位数要一致。表名:sfz 字段:id 写一条记录:110108198302151642 新建一查询,在sql视图键入:select mid(id,7,8) from sfz 其中7代表从第7个字符开始取,8代表取8个字符(19830215)

在数据库ACCESS中,如何将身份证号码转换为出生日期格式
答:用asp 可以做一下 一截取函数 先判断是15位还是18位 然后截取其中 第几个到第几个的数字 转换成日期

access身份证号码或出生日期为空时换算性别,年龄错误
答:那你就先判断一下啊,判断当居民身份证号码为空时返回一个什么值。你那取位函数可以给个条件啊,当身份证是空时他是个什么数,不是时他是取位数。用IIF()函数啊 IIF(居民身份证号 IS NULL,DAY(date()),MID(身份证号),7,2)因为身份证号字段类型未必和DATE一样 ...

ACCESS数据库中字段“身份证号码”的数据类型应设为?
答:但是不能排除身份证号码身份证号码里需要使用除数字以外的其他字符的可能,例如身份证号码需要含字母、标点符号或以0开始等特殊需求情况,如果字段被设置为数字,那么碰到特殊的身份证号码时就无法存储了,另外身份证号码有18位,如果按数字类型来处理其值也偏大,不利于日常维护和使用。

access中导入了数据库文件,其中字段7是证件号码,但是证件号码有多种,我...
答:精确判断,可以编写一个全局自定义判断函数,假设函数名为Is_Id_Num(),严格按照身份证的编码规则判断字段值是否符合相应的规则,然后在SQL语句里调用该函数就可,例如:select * from 表名 where Is_Id_Num(字段7)=True;但是编写这个全局自定义判断函数很麻烦,首先您得知道完整的身份证编码规则,其次...