gpt4 book ai didi

vba - 如何使用宏 vba 从特定列中删除重复行

转载 作者:行者123 更新时间:2023-12-04 22:33:38 26 4
gpt4 key购买 nike

我在如何删除 excel 中特定列的具有相同值的行时遇到问题。
请参阅下面的屏幕截图以了解我的问题:
enter image description here

在行 4: FullName: A SeqNo:003
在行 5: FullName: A SeqNo:003
所以行 4 5 具有相同的值,所以我想删除其中一个,但我不想删除行 automatically random 但条件是只有 latest date will remain.

条件是这样的:
enter image description here

这应该是正确的输出:
enter image description here

那么如何通过宏 vba 来实现呢?
提前致谢!

最佳答案

尝试这个。

Sub test()
Dim vDB, vR()
Dim X As New Collection
Dim Str As String
Dim i As Long, j As Long, r As Long, c As Integer
Dim n As Long

vDB = Range("a1").CurrentRegion
r = UBound(vDB, 1)
c = UBound(vDB, 2)

On Error Resume Next

For i = 1 To r
Str = vDB(i, 1) & vDB(i, 4)
Err.Clear
X.Add Str, Str
If Err.Number = 0 Then
n = n + 1
ReDim Preserve vR(1 To c, 1 To n)
For j = 1 To c
vR(j, n) = vDB(i, j)
Next j
End If
Next i
For i = 1 To n
For j = 1 To r
If vDB(j, 1) = vR(1, i) And vDB(j, 4) = vR(4, i) Then
If vDB(j, 5) >= vR(5, i) Then
vR(2, i) = vDB(j, 2)
vR(5, i) = vDB(j, 5)
End If
End If
Next j
Next i
Sheets.Add
Range("a1").Resize(n, c) = WorksheetFunction.Transpose(vR)

End Sub

关于vba - 如何使用宏 vba 从特定列中删除重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50985179/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com