Contract No Price
D/019/09 17.85
D/019/09 17.85
D/019/09 17.85
D/019/09 17.85
D/023/09 17.85
D/023/09 17.85
D/026/09 0
D/026/09 0
D/038/11 20.6
D/038/11 20.6
D/038/11 20.6
以上是一个示例数据系列...我想保留每个唯一合同的最后一次出现。在上面的例子中,我只想保留D / 023/09 17.85,D / 026/09 0和D / 038/11 20.6。所以应该只有3个唯一值。最有效的方法是什么?
答案 0 :(得分:1)
此处我的评论是另一种方式,不需要对数据进行排序。请参阅D/019/09
=IF(COUNTIF($A2:$A$13,A2)>1,0,B2)
答案 1 :(得分:0)
这里不需要vba ...... 添加C列并将其命名为“Check”。在单元格C2中插入以下公式:
=if(A2<>A3,1,0)
将该公式复制到数据范围的末尾。 接下来在C列中应用0的过滤器。删除所有行,然后就可以了。
之前的表格:
您的表格之后:
答案 2 :(得分:0)
尝试以下代码。使用VBA
Sub sample()
Dim lastRow As Long, j As Long
lastRow = Range("A65000").End(xlUp).Row
j = 1
For i = lastRow To 2 Step -1
If Cells(i, 1).Value <> Cells(i + 1, 1) Then
Cells(i, 1).Copy Cells(j, 3)
Cells(i, 1).Offset(0, 1).Copy Cells(j, 4)
j = j + 1
End If
Next
End Sub