2016-03-02 189 views
2

我正在使用以下命令来格式化包含日期的单元格。日期格式VBA英文缩写

.Range("C6").Value = Format(Me.txtStart.Value, "dd-MMM-yy") 

因此,我输入例如01.01.13和单元它将它转换为01-Jan-13。然而,尽管我已将Office的语言设置为英文,但文本,即MMM部分始终是德语。例如对于March Excel而言,MRZ代替MAR。有没有办法确保它始终输入月份的英文缩写?

非常感谢提前!

+0

[VBA - 更改日期语言]的可能重复(http://stackoverflow.com/questions/32090315/vba-change-date-language) – eirikdaude

+0

要从上面链接的问题的答案中复制,可以使用以下是强制月份的语言:'WorksheetFunction.Text(日期 - 日期(日期),[[$ -409] mmmm“)' – eirikdaude

+0

非常感谢!但是,我必须将其复制到正确的位置以使其正常工作? –

回答

0
Sub DateFormat() 

Sheet1.Range("C6:D6").Value = WorksheetFunction.Text(Cells(C6, D6), "dd-[$-409]MMM-yy") 

End Sub 

我创建,为了格式化细胞(并且只有那些细胞)C6和D6运行以下Sub但不知它不起作用。我做错了什么/失踪?

如果我用“日期”替换“单元格(C6,D6)”,格式可以工作,但它总是插入今天的日期,只应该格式化两个字段中已有的日期。