文本到列可变行数

时间:2014-01-09 04:01:39

标签: excel-vba vba excel

下面附带的代码是将文本拆分为列。运行此代码时出错。 要拆分的数据如下:

NAME,1244
  NAME,4356
  NAME,5678

NAME的行数是可变的。我得到运行时错误1004,没有选择数据来解析。怎么解决这个问题?

Sub SplitNameToColumns()
Dim rowCount As Long
rowCount = Cells(Rows.Count, "F").End(xlUp).Row

    Range("F2").Select
    For Counter = 1 To rowCount Step 1

        Selection.TextToColumns Destination:=ActiveCell, DataType:=xlDelimited, _
            TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, _
            Tab:=False, Semicolon:=False, Comma:=True, Space:=False, _
            Other:=False, _
            FieldInfo:=Array(Array(1, 1)), _
            TrailingMinusNumbers:=True

        ActiveCell.Offset(1, 0).Select
    Next Counter
End Sub

1 个答案:

答案 0 :(得分:1)

试试这个:

Sub SplitAndScatter()
    Dim LastRow As Long
    LastRow = Cells(Rows.Count, "F").End(xlUp).Row
    With Range("F2:F" & LastRow)
        .TextToColumns Destination:=Range("F2"), DataType:=xlDelimited, Comma:=True
    End With
End Sub

这是从我回答here的其他问题中采取和修改的。

如果有帮助,请告诉我们。