FeildInfo的简单TextToColumns无法正常工作

时间:2019-06-10 18:40:51

标签: excel vba

我正在尝试使用TextToColumns来将Delimited字段格式化为

MM / DD / YYYY HH:MM (excel只是将其视为文本,而不是日期-它以空格分隔)

公正

DD / MM / YYYY

我想从第二个单元格开始对电子表格的第二列进行整个操作

到目前为止,我将第二列设置为范围(我将B2设置为B2000,因为我不想影响B1)。我指定数据用空格定界,第一列需要格式化为DataType 6,第二列需要跳过。

'define and set range

Dim rng As Range
Set rng = Range("B2:B2000")

'use Text To Columns

rng.TextToColumns Destination:=rng, DataType:=xIDelimited, TextQualifier:=xlTextQualifierDoubleQuote, 
Space:=True, 
FieldInfo:=Array(Array(1, 6), Array(2, 9))

运行代码时,什么也没有发生。没有错误,也没有结果

2 个答案:

答案 0 :(得分:1)

您的代码中有错字:

您有:DataType:=xIDelimited

应为:DataType:=xlDelimited

答案 1 :(得分:0)

尝试一下:

Sub dural()
    Dim rng As Range, r As Range, v As String, d As Date

    Set rng = Range("B2:B2000")
    For Each r In rng
        v = r.Text
        If InStr(1, v, "/") > 0 Then
            arr = Split(v, " ")
            brr = Split(arr(0), "/")
            d = DateSerial(brr(2), brr(0), brr(1))
            r.Clear
            r.Value = d
            r.NumberFormat = "dd/mm/yyyy"
        End If
    Next r
End Sub

之前:

enter image description here

及之后:

enter image description here