我有一个Excel工作表,其中一些行可能包含与其他行相同的数据,除了一列。我需要一个宏来对该列中的所有值进行求和并删除所有重复项,除了第一个包含其余项的总和之外。例如:总和重复的行,然后删除所有重复
A B C D
1 a b c d
2 n j i o
3 a b c p
4 v y e b
5 a b c m
6 . . . .
在这种情况下,代码必须删除行3和5(因为它们是第1行的“重复”)中,用d + P +米替换第1行的列d。我设法想出下面的代码:
For j = 1 To Range("A1").End(xlDown).Row
For i = j + 1 To Range("A1").End(xlDown).Row
If Cells(j, 1).value = Cells(i, 1).value And Cells(j, 2).value = Cells(i, 2).value And Cells(j, 3).value = Cells(i, 3).value Then
Cells(j, 6) = Cells(i, 6).value + Cells(j, 6).value
Rows(i).Delete Shift:=xlUp
i = i - 1
End If
Next i
Next j
但正如你可能已经注意到,这是非常低效的和基本的。任何更好的想法?
连接一个,B和C,然后排序并内置在Excel中使用小计在串联中的每一个变化总结d?编辑:虽然没有删除:/ – findwindow
lol @Jeeped我正在写一个答案XD – findwindow
@findwindow如果它与Jeeped指出的不同,那么继续...越多的选项,越好:) –