减少字符串并保持零完整

Mik*_*ike 4 excel vba excel-vba excel-formula

我正在使用格式为"XXXX-000-000-000"的单元格值.

  • 第一个连字符之前的所有内容都需要删除,我可以这样做.
  • 字符串的其余部分需要使用连字符减少为整数,并删除任何额外的零.

我无法将零保持在正确的位置.

  • AD12-002-020-34需要看起来像这样:2-20-34
  • CA1-002-101-001需要如下所示:2-101-1
  • AD12-002-020-10需要看起来像这样:2-20-10

例如:

dim ir as range

ir = "AD12-002-020-100"

ir1 = InStr(ir, "-")
ir2 = InStrRev(ir, "-")
ir.Offset(0, 1) = Mid(ir, ir1 + 1, ir2 - ir1 + 3)
Run Code Online (Sandbox Code Playgroud)

这给了我:002-020-100

建议?先感谢您!

Gar*_*ent 15

考虑:

Sub dural()
    Dim s As String
    s = "AD12-002-020-34"
    s = Replace(s, "-0", "-")
    s = Replace(s, "-0", "-")
    ary = Split(s, "-")
    ary(0) = ""
    s = Mid(Join(ary, "-"), 2)
    MsgBox s
End Sub
Run Code Online (Sandbox Code Playgroud)