我是Access的新手,对VBA代码的经验很少。我的一位同事(遗憾地不再和我们在一起)设计了我正在使用的数据库,而且我不完全理解它的设置方式(如果我有点模糊,那么道歉......)。
我的问题是我有一个访问表,其中包含两种不同的日期格式:同一字段中的yyyy-mm-dd和dd-mm-yyyy。这是因为我们有两个系统用于记录我们公司内不同位置的官员时间,这些系统使用不同的日期格式。我写了一个查询,其中包括“[开始日期]和[结束日期]之间'作为查询日期范围的日期字段的条件。这适用于yyyy-mm-dd,但对dd-mm-yyyy格式不起作用。
我尝试将表格的默认日期格式设置为一种格式或另一种格式,但此表格会通过宏导入的新时间统计信息不断更新。每次更新表时,都会重置日期格式。有没有办法在表/数据库中硬编码时间格式或在查询中包含日期格式表达式以将dd-mm-yyyy更改为yyyy-mm-dd?如果我没有提供足够的细节,请道歉。如果您需要更多细节,我可以提供。
感谢。
答案 0 :(得分:1)
日期不应作为文本存储在表格中。最佳解决方案 - 将字段数据类型更改为Date/Time
并以内部格式存储日期。表格/报告的日期格式将根据PC的区域设置使用
现有数据可以手动或使用VBA转换为内部格式。
答案 1 :(得分:0)
要么确保两个系统都以相同的格式上传数据。 和/或更改您的宏,以便将所有日期转换为单一格式(您可能必须使用VBA)。 接下来,将表格中的所有日期转换为一种日期格式。 并将列的数据类型更改为Date。