che*_*hen 1 excel vba excel-formula
如何在单元格中找到序列号,并用范围替换它们?
例如:
改变:
1?3?5?15?16?17?25?28?29?31...
到:
1,3,5,15-17,25,28-29,31...
数字已经排序,即按升序排列。
谢谢。
一个有趣的问题,我想在不循环检查顺序构建的序列(需要先排序)的情况下查看
这个功能
Union将连续的行组合在一起不需要循环,更短的版本!
Function NumOut(strIn As String) As String
Dim rng1 As Range
Set rng1 = Range("A" & Join(Split(Application.Trim([a1]), ", "), ",A"))
'force the range into areas rather than cells
Set rng1 = Union(rng1, rng1)
NumOut = Replace(Replace(Replace(rng1.Address, "$A$", vbNullstring), ": ", "-"), ",", ", ")
End Function
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
381 次 |
| 最近记录: |