解析细胞和粘贴细胞包含调整细胞

时间:2014-12-03 14:04:20

标签: vba excel-vba excel

我已经尝试了一百万种但是无法获得此功能(excel上的VBA) 我有以下excel电子表格,第一行是输入,其他是我想要的输出。 我的先决条件是说永远不会超过四个级别(3分)。每个级别可以达到1到99个。

http://i.stack.imgur.com/SxKj6.png

我正在尝试将每个级别复制并粘贴到调整单元格。任何建议如何用vba做到这一点。我已经想出如何得到行的计数然后可能做一个for循环,这样每行可以使用sub转换为输出形式,但这就是我被卡住的地方。

1 个答案:

答案 0 :(得分:0)

选择您要处理并运行的单元格:

Sub PointParser()
    Dim r As Range, s As String
    For Each r In Selection
        s = r.Text
        cnt = Len(s) - Len(Replace(s, ".", ""))
        r.Offset(0, 1) = 0
        r.Offset(0, 2) = 0
        r.Offset(0, 3) = 0
        r.Offset(0, 4) = 0
        If cnt = 0 Then
            r.Offset(0, 1) = s
            GoTo NextOne
        End If
        If cnt = 1 And Right(s, 1) = "." Then
            r.Offset(0, 1) = s
            GoTo NextOne
        End If
        ary = Split(s, ".")
        j = 1
        For Each a In ary
            r.Offset(0, j) = a
            j = j + 1
        Next a
NextOne:
    Next r
End Sub