我正在尝试使用 VBA 在 Excel 中合并重复的单元格值。以下是数据示例:
Col1 Col2
运行 1
运行 2
见 9
去 5
见 1
我需要合并这些信息,以便数据如下:
Col1 Col2
跑 3
见 10
去 5
意思是,我需要合并第 1 列中的重复值,并在第 2 列中对它们的对应值求和。
我已经在这里咨询并尝试过类似的情况:How to SUM / merge similar rows in Excel using VBA?
其中一项建议是以下宏:
Sub Macro1()
Dim ColumnsCount As Integer
ColumnsCount = ActiveSheet.UsedRange.Columns.Count
ActiveSheet.UsedRange.Activate
Do While ActiveCell.Row <= ActiveSheet.UsedRange.Rows.Count
If ActiveCell.Value = ActiveCell.Offset(1, 0).Value Then
For i = 1 To ColumnsCount - 1
ActiveCell.Offset(0, i).Value = ActiveCell.Offset(0, i).Value + ActiveCell.Offset(1, i).Value
Next
ActiveCell.Offset(1, 0).EntireRow.Delete shift:=xlShiftUp
Else
ActiveCell.Offset(1, 0).Select
End If
Loop
End Sub
但是,它似乎正在创建一个无限循环,导致我的 excel 崩溃,而实际上没有合并任何东西。
有人对我如何调整此代码以达到我需要的合并解决方案有任何建议吗?