首页 > 解决方案 > 数据格式意外地从 dd/mm/yyyy 转换为 mm/dd/yyyy

问题描述

我有一个用户表单来收集一些要插入到 Excel 工作表中的数据。其中一个字段是日期,对于我的语言环境,日期始终是 dd/mm/yyyy。

我在表单中输入了一个日期(即 13/08/2018)并调试了我看到的代码:

data_mov = new_mov.data.Value

该值取自我编写的表单。所以它仍然是 13/08/2018。计算结果为 2018 年 8 月 13 日 = 2018 年 8 月 13 日

然后我把值放在一个特定的单元格中。调试我看到了

Range("A" & riga).Value = data_mov

评估为 2018 年 8 月 13 日 = 2018 年 8 月 13 日

所以单元格存储 08/02/2018。为什么会这样?我没有可以操纵日期的中间代码。我怎样才能防止这种情况发生?

标签: excelvbadate

解决方案


尝试将此行添加到您的代码中:

Range("A" & riga).NumberFormat = "dd/mm/yyyy;@"

它将对您的单元格应用所需的格式。

或者,您可以使用:

Cells(riga, 1).NumberFormat = "dd/mm/yyyy;@"

推荐阅读