【问题标题】:Date format - excel userform to access database (both 2003)日期格式 - 用于访问数据库的 excel 用户表单(均为 2003 年)
【发布时间】:2015-05-02 18:44:01
【问题描述】:

我在 Excell 2003 中有一个用户表单 - 一个文本字段会自动填充今天的日期:

InDate.Value = Format(Date, "dd/mm/yyyy")

这在上个月底以 dd/mm/yyyy 格式将其发送到 Access 数据库。

今天日期在 Excel 用户表单中显示为 02/03/2015 - 当它提交到 Access 表时,它被设置为 03/02/2015。我已将表格中的字段设置为“日期/时间”,格式为“短日期”。默认值为 Date()。

当我查看表格时,它会在下一个空白行中显示日期,并使用正确的格式自动填充,但是当我从 excel 用户表单提交时,它再次更改为 mm/dd/yyyy。

整天都在寻找并试图解决这个问题!

谢谢。

汤姆

【问题讨论】:

  • 日期格式的系统本地化设置是什么?
  • 大家好,我已经做了一些检查。一些用户 - 日期显示正常,其他用户不正确 - 我检查了屏幕右下角的日期也显​​示正确(2015 年 3 月 4 日) - 这是否意味着他们的本地化设置正确?我已将代码从格式更改为 dd/mm/yyy 以仅使用 DATE。我的 IT 部门说用户设置应该没有问题。有什么建议吗?

标签: excel vba userform


【解决方案1】:

我认为这是本地化问题。

美国语言环境格式日期如mm/dd/yyyy,而英国语言环境格式日期如dd/mm/yyyy。你只需要你的系统语言环境。

希望此链接对您有所帮助:http://allenbrowne.com/ser-36.html

【讨论】:

  • 感谢您的回答 - 很遗憾,我无法更改系统区域设置。文件(访问数据库和 Excel 用户表单)存储在共享网络驱动器上,因此每个人都可以访问它。有什么聪明的方法可以解决这个问题吗?谢谢。
  • 是的。当一个大于另一个时,您将需要一个 UDF(用户定义函数)来切换 dd 和 mm!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-02-27
  • 2011-12-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多