如果那些相同的行已经合并到另一列中,我需要帮助找到一个可以合并特定列中行的单元格的宏。下面是我现在拥有的屏幕截图,它显示了 B 列中需要根据 A 列中已经合并的单元格进行合并的单元格。
下面的屏幕截图是宏运行后我需要电子表格的样子
如果那些相同的行已经合并到另一列中,我需要帮助找到一个可以合并特定列中行的单元格的宏。下面是我现在拥有的屏幕截图,它显示了 B 列中需要根据 A 列中已经合并的单元格进行合并的单元格。
下面的屏幕截图是宏运行后我需要电子表格的样子
nixda已经回答了...
Sub mergecolumn()
Dim cnt As Integer
Dim rng As Range
Dim str As String
For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1
cnt = Cells(i, 1).MergeArea.Count
Set rng = Range(Cells(i, 2), Cells(i - cnt + 1, 2))
For Each cl In rng
If Not IsEmpty(cl) Then str = str + vbNewLine + cl
Next
If str <> "" Then str = Right(str, Len(str) - 2)
Application.DisplayAlerts = False
rng.Merge
rng = str
Application.DisplayAlerts = True
str = ""
i = i - cnt + 1
Next i
End Sub