如何在excel vba中将日期格式化为英国日期

时间:2017-09-11 11:16:14

标签: vba excel-vba formatting userform excel

我创建了一个userform,它查看输入日期的几个单元格。奇怪的是,当它将日期格式化为英国格式时,它非常有气质。当我最初编写代码时,它会格式化英国格式的日期,然后再次格式化日期,然而今天2017年9月11日它已转用美国格式而不是阅读11/09/2017它正在阅读{{1} }。

日期通过文本框输入,编码如下。有人可以发出任何建议来防止将来发生这种情况吗?语言和键盘设置也都是英国英语。

09/11/2017

在所有这些示例中,日期已在文本框中输入为11/09/2017

1 个答案:

答案 0 :(得分:0)

确保您正在以正确的数据格式读取单元格 - 这可能会在格式化时导致问题。如果是String,则将其转换为Number或Date。 如果您将其作为数字读取,则NumberFormat可能很有用:

selection.NumberFormat = "dd/mm/yyyy"

另外,要注意大写和小写:DD与dd不同。不要把它放在我的头顶,但是例如如果你需要月份作为3个首字母(如FEB,JUN等),你需要'MMM'而不是'mmm'