Excel多个文本到列将六位数日期(mm / dd / yy)转换为八(mm / dd / yyyy)

时间:2015-03-02 20:37:38

标签: excel vba date

我在下面发布的代码(录制的宏)使用text to column在一列中将六位数(mm / dd / yy)的日期更改为八(mm / dd / yyyy)。代码保留在同一列中。

Sub ConvertYears()
Range("Table_Wholesale8[Proceed_ECD]").Select
    Selection.TextToColumns Destination:=Range("J2"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
        Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 3), TrailingMinusNumbers:=True
End Sub

我的问题是我需要一次对多个列执行此操作。可能有帮助的解决方案是让Macro循环遍历列并转换日期格式或列中的列(J:AT)。

请注意我对VBA很新。

1 个答案:

答案 0 :(得分:0)

循环代码看起来像这样:( J的列号是10,AT是46)

Sub ConvertYears()
    Dim i as integer
    For i = 10 to 46
        Range(chr(i+64) & "2").Select
        Selection.TextToColumns Destination:=Cells(2, i), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
    Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
    :=Array(1, 3), TrailingMinusNumbers:=True
    Next i 
End Sub