2013-10-11 138 views
0

为什么不能让我改变我列中的日期格式?基本上,我在Excel表格的两列上有一个日期格式。 “D”9/2/2013年m/d/yyyy和“E”列17/9/2013 d/m/yyyy。问题是我能够将列“D”中的格式更改为任何日期格式,但无法在列“E”中执行。不同的日期格式?

这是怎么回事?

+0

如果在列的单元格** **ê对格式变化性,他们可能文本而不是真正的日期。它们可以通过一个简单的宏转换成真正的日期。这种方法可以接受吗? –

+0

@加里的学生,这种做法是可以接受的。 – William

+0

@pnuts不真的知道,如果这是格式化为文本,但似乎不管我做什么都不会改变... – William

回答

0

需要加以固定和运行仅选择那些细胞:

Sub FixDates() 
    Dim D As Date 
    Dim r As Range 
    For Each r In Selection 
     s = r.Text 
     ary = Split(s, "/") 
     D = DateSerial(ary(2), ary(1), ary(0)) 
     r.Value = D 
     r.NumberFormat = "mm/dd/yyyy" 
    Next r 
End Sub 
+0

伟大的作品像一个魅力... – William

+0

你是相当欢迎... ...感谢您的反馈。 –