|
发表于 2012-2-10 13:02
|
显示全部楼层
本楼为最佳答案
本帖最后由 爱疯 于 2012-2-10 13:25 编辑
- Sub test()
- Dim A, i%
- With Sheets("sheet1")
- A = .Range("b4:c" & .Range("b4").End(xlDown).Row)
- End With
- For i = 1 To UBound(A)
- A(i, 2) = pd(A(i, 1))
- Next i
- [c4].Resize(UBound(A), 1) = Application.Index(A, 0, 2)
- End Sub
-
-
- Function pd(x) '判断
- Dim b%, s%, g%
- 100:
- pd = x
- b = Left(x, 1)
- s = Mid(x, 2, 1)
- g = Right(x, 1)
- '如果百位和十位相同 , 那么十位加1取尾
- If b = s Then
- x = b & Right((s + 1), 1) & g
- GoTo 100
- End If
- '如果十位和个位相同 , 那么个位加1取尾
- If s = g Then
- x = b & s & Right((g + 1), 1)
- GoTo 100
- End If
- '如果个位和百位相同 , 那么个位加1取尾
- If g = b Then
- x = b & s & Right((g + 1), 1)
- GoTo 100
- End If
- '如3个数码全相同,第2位加1取尾,第3位加2取尾
- If Replace(x, b, "", , 3) = "" Then
- pd = b & Right((s + 1), 1) & Right((g + 2), 1)
- End If
-
- End Function
复制代码
Book1c.rar
(19.62 KB, 下载次数: 12)
|
评分
-
查看全部评分
|