Mam arkusz kalkulacyjny programu Excel z dwiema kolumnami: kolumna A zawiera listę nazwisk, a kolumna B zawiera daty.
Chcę pozbyć się zduplikowanych wpisów na podstawie dat. To jest przykład
A B
John 01/03/2020
John 01/03/2020
Bob 01/03/2020
John 02/03/2020
Bob 02/03/2020
Bob 02/03/2020
Chcę usunąć duplikaty, które mają tę samą datę, więc ostateczny wynik powinien być:
A B
John 01/03/2020
Bob 01/03/2020
John 02/03/2020
Bob 02/03/2020
2 odpowiedzi
Dlaczego nie korzystasz ze standardowej funkcji Remove duplicates
?
Jeśli zdecydujesz się użyć VBA, spróbuj:
Sub test()
Dim i As Long, y As Long, Lastrow As Long
Dim strName As String
Dim dtDate As Date
With ThisWorkbook.Worksheets("Sheet1")
Lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
For i = Lastrow To 1 Step -1
For y = i - 1 To 1 Step -1
If (.Range("A" & i).Value = .Range("A" & y).Value) And (.Range("B" & i).Value = .Range("B" & y).Value) Then
.Rows(i).EntireRow.Delete
End If
Next y
Next i
End With
End Sub
Podobne pytania
Powiązane pytania
Nowe pytania
excel
Tylko w przypadku pytań dotyczących programowania w odniesieniu do obiektów lub plików programu Excel albo tworzenia złożonych formuł. Możesz połączyć tag Excela z VBA, VSTO, C #, VB.NET, PowerShell, automatyzacją OLE i innymi znacznikami i pytaniami związanymi z programowaniem, jeśli dotyczy. Ogólna pomoc dotycząca MS Excel dla funkcji pojedynczego arkusza jest dostępna w Super User.