|
楼主 |
发表于 2013-5-19 09:48
|
显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
grf1973 发表于 2013-5-19 08:45
str1不用累加,直接用Right函数就行。
我又在你身上学习到了东西,很感激!!!{:soso_e113:},以下代码是我最终想要的。
- Sub tt2()
- Dim arr
- With Sheets(1)
- b = .UsedRange.Rows.Count
- For i = 2 To b
- arr = Split(Cells(i, 1), "-")
- mstr = arr(1)
- For j = Len(mstr) To 1 Step -1
- If Mid(mstr, j, 1) <> "0" Then
- endp = j 'endp表示从后往前第一个非0的位置
- str1 = Right(mstr, Len(mstr) - endp)
- Exit For
- End If
- Next
- mstr = Left(mstr, endp)
- mstr = Replace(mstr, "0", "")
- .Cells(i, 3) = arr(0) & "-" & mstr & str1 '把最后截取的0加上
- Next
- End With
- End Sub
复制代码
|
|