VBA不会更改所有单元格的格式

我有一个列(col。I),date格式不同:

16. Jul 98 // 22-MAR-2016 // 04-MAY-2015 // 17. Jul 10 // 13-DEC-2011 // 25. Aug 98 // 12. Sep 11 

我用下面的代码来改变格式:

 Sub numberformats() Range("I:I").NumberFormat = "dd. mmm yyyy" End Sub 

但是,虽然这对格式为dd的单元格工作正常。 mmm yy,它不适用格式为dd-mmm-yyy的单元格。 用简单的右键单击格式的单元格来改变格式也没有帮助(这是我的第一步,在转移到VBA之前)。

我做了一个互联网search,但所有的答案,我发现类似的问题是太复杂,我不能适应我的问题。 我很乐意得到一些build议(我是一个绝对的初学者…)。

发生这种情况时,您正在使用非英语版本的Excel。

例如,在德语版本中,22.03.2016是22.Mrz 16 。 因此,对于您的情况,Excel不明白您给予date,当您给予22-MAR-2016UPPERCASE有点问题。

也许这是一个好主意,将其更改为22-Mar-2016 ,再试一次,在我的Excel它得到它相当好。

要查看Excel可以理解的内容,请转到文件>选项>高级>用户定义列表。 在那里你会看到以下内容: 在这里输入图像描述