📅  最后修改于: 2023-12-03 15:14:56.362000             🧑  作者: Mango
如果你在处理Excel数据时需要去除重复的ID,只保留第一次出现的ID,可以使用以下的程序解决问题。
Private Sub KeepFirstID()
Dim Dictionary As Object
Set Dictionary = CreateObject("Scripting.Dictionary")
Dim LastRow As Long
LastRow = Range("A1").SpecialCells(xlCellTypeLastCell).Row
Dim i As Long
For i = 1 To LastRow
Dim ID As String
ID = Cells(i, 1).Value
If Not Dictionary.Exists(ID) Then
Dictionary.Add ID, True
Else
Rows(i).Delete Shift:=xlUp
i = i - 1 'Row index changed after deletion, so index needs to be adjusted.
LastRow = LastRow - 1 'Update last row
End If
Next i
End Sub
这段程序利用Scripting.Dictionary对象来存储已经出现过的ID。在遍历Excel表格中的ID时,每当遇到新的ID时,我们检查字典中是否已经有了该ID。如果没有,则将该ID添加到字典中,并继续遍历下一个ID。如果该ID已经出现过,则删除该行数据,也就是该ID的重复数据。注意,删除行后,需要调整遍历的行号和最后一行的行号。
这段程序可以快速地去除Excel表格中的重复ID,只保留第一次出现的数据。同时,我们也可以使用类似的方法去除Excel表格中的其他重复数据,只需根据需要修改代码即可。