VBA对于每个字符和组字符

时间:2017-02-07 14:01:44

标签: string excel-vba for-loop split vba

我一直在研究一个在“J39303”的上下文中获取序列号的项目,但有时会有多个序列号,但每次我都可以保证每个序列长度为6个字母,例如,

J848407888488393 - 这里有3个连续剧,没有J作为开始,我希望能够将它分成3个单独的值,J84840,78884,88393,

我看过右边,中间和左边但由于位置发生变化我不能使用这些,我现在正在寻找一个For循环来分组每个5个字符但是没有运气,

有人可以向我发出正确的方向吗,

谢谢!

1 个答案:

答案 0 :(得分:1)

这应该这样做:

Sub mysplit()
    Const SNLength As Integer = 5

    Dim SNs As String
    SNs = "J848407888488393"

    Dim SerialNumber As String
    Dim index As Integer

    If Left(SNs, 1) = "J" Then SNs = Mid(SNs, 2)

    index = 1
    Do While index < Len(SNs)
        SerialNumber = Mid(SNs, index, SNLength)
        MsgBox "J" + SerialNumber
        index = index + SNLength
    Loop
End Sub