|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
下面可以用IIF简化一下去除“/”
基于你的算法自己用正序写了一个
- Option Explicit
- Sub 按钮1_Click()
- Dim i%, j%, n%, x%, c%, arr()
- Application.ScreenUpdating = False
- With Sheet1
- j = .[a65536].End(xlUp).Row: x = 1 ': n = 1
- Range("C2:C" & j).ClearContents
- arr = .Range("A1").CurrentRegion
- For i = 2 To UBound(arr)
- 'If arr(i, 2) = arr(i + 1, 2) Then
- 'n = n + 1
- 'Else
- 'c = i - n + 1
- 'For x = (i - n + 1) To i
- 'arr(c, 3) = IIf(arr(c, 3) <> "", arr(c, 3) & "/" & arr(x, 1), arr(x, 1))
- 'Next: n = 1
- 'End If
- If arr(i, 2) <> arr(i - 1, 2) Then
- For n = x To i - 1
- arr(x, 3) = IIf(arr(x, 3) <> "", arr(x, 3) & "/" & arr(n, 1), arr(n, 1))
- Next: x = i
- End If
- Next
- Range("C2:C" & [a65536].End(xlUp).Row).Value = Application.Index(arr, , 3)
- End With
- Application.ScreenUpdating = True
- End Sub
复制代码 |
|