【发布时间】:2021-10-15 04:34:46
【问题描述】:
我有一个范围,其中包含从 A 列到 K 列的数据的行。C 列中单元格值的每个新更改之间已经有一个空白行。我想根据值是否相同来合并 c 列中的数据加上下面的一个空白行。我绝对需要合并为 B 列中的每个唯一单元格值包含一个空白行,因为稍后我将对值进行分组。
我当前的代码合并了除最后一个唯一值之外的所有内容...谁能帮我调整我的代码,以便我也可以包含我最后一个唯一值?
Sub MergeSameValue()
Application.DisplayAlerts = False
Dim LastRow As Integer
Dim StartRow As Integer
StartRow = 12
LastRow = Range("B" & Rows.Count).End(xlUp).Row
Dim StartMerge As Integer
StartMerge = StartRow
For i = StartRow + 1 To LastRow + 1
If Cells(i, 2) <> "" Then
If Cells(i, 2) <> Cells(i - 1, 2) Then
Range(Cells(i - 1, 2), Cells(StartMerge, 2)).Merge
StartMerge = i
End If
End If
Next i
End Sub
【问题讨论】:
-
旁注:将所有
Integer更改为Long,参见this。 -
会的!非常感谢你,BigBen。