Ms access 无法从VBA Access中的表中查询特定年龄范围的数据
我有一个包含出生日期列和其他列的表。我想提取特定年龄段(>25岁)的所有数据。我已经编写了以下代码,但它不起作用。它显示空白行。我使用format函数是因为在我的表中,数据是“dd-mm-yyyy”格式的 我的表在MS Access中,我用VBA编写了查询Ms access 无法从VBA Access中的表中查询特定年龄范围的数据,ms-access,vba,ms-access-2016,Ms Access,Vba,Ms Access 2016,我有一个包含出生日期列和其他列的表。我想提取特定年龄段(>25岁)的所有数据。我已经编写了以下代码,但它不起作用。它显示空白行。我使用format函数是因为在我的表中,数据是“dd-mm-yyyy”格式的 我的表在MS Access中,我用VBA编写了查询 select * from Customer where DOB > format(dateadd('yyyy', -25, date()), 'dd-mm-yyyy') 格式仅用于显示,因此: select * from Cust
select * from Customer
where DOB > format(dateadd('yyyy', -25, date()), 'dd-mm-yyyy')
格式仅用于显示,因此:
select * from Customer
where DOB > DateAdd('yyyy', -25, Date())
格式属性设置不会更改实际数据。您是否更改了计算机设置中的日期格式?没有,我没有。它在Access中的日期类型中。如果您的计算机区域设置为美式日期,则不要用代码格式化日期。如果用户按dd/mm/yyyy顺序输入日期,许多值可能不会存储为预期的日期。Access将2018年1月13日理解为2018年1月13日,并正确保存。然而,Access将接受2018年1月2日的订单,但将其解读为2018年1月2日,而不是2018年6月1日。你读过AllenBrowne的文章吗?是的,我读过。我的计算机区域设置与我的数据库日期“dd-mm-yyyy”的格式相同。我也尝试过不使用格式函数,结果也一样。对不起,这是我对国际日期理解的极限。我不必处理这个问题。尝试格式化DOB字段和参数。