我正在尝试编写代码来解决我遇到的这个小问题,但似乎无法实现。我在excel电子表格中有多个列,并且在那些列之一中,有重复的值。我想要做的是删除第二个/重复的值,但还要在其他列之一中获取整数值,并将其添加到第一个值所在的行,然后删除该“第二个”行。我尝试使用.RemoveDuplicates命令,但是它只是删除了重复的值并将整个列上移,因此我无法根据需要添加值。
这是一个例子
我只需要从D列之一中删除重复项,在这里我们看到第5行和第10行在该列中是相似的,而我想做的是在第5行中添加C列中的数字并删除t´10行,所以我将结束此
我真的希望你们中的任何一个都能帮上忙,因为我有点迷茫。谢谢!
答案 0 :(得分:0)
没有代码,您可以使用高级副本将唯一值复制到另一个范围,sumif获取总计,索引/匹配将其他列引入。一旦找出来,将其记录为宏并清理。
答案 1 :(得分:0)
使用数据透视表恢复数据。
您的输入数据如下:
您可以使用数据透视表恢复数据,并按第4列对数据进行分组,并在第3列中对值求和。像这样:
这样,您可以创建一个新的数据范围,在该范围中,可以根据需要对数据进行分组,不包括不必要的行。试试吧!
答案 2 :(得分:0)
如果要删除行,请从头开始。查看您正在处理的行上方的D列中的值是否匹配。如果存在匹配项,则将C列中的值求和到匹配的行中,然后删除您正在处理的行。
Sub words()
Dim i As Long, m As Variant
With Worksheets("sheet1")
For i = .Cells(.Rows.Count, "D").End(xlUp).Row To 2 Step -1
m = Application.Match(.Cells(i, "D").Value, .Range("D:D").Resize(i - 1, 1), 0)
If Not IsError(m) Then
.Cells(m, "C") = .Cells(m, "C").Value2 + .Cells(i, "C").Value2
.Cells(i, "D").EntireRow.Delete
End If
Next i
End With
End Sub