• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Dubbele waarden verwijderen maar behoud de jongste datum

Status
Niet open voor verdere reacties.

Brugge

Gebruiker
Lid geworden
26 nov 2022
Berichten
8
Beste,

ik gebruik de laatste versie van excel en heb een vraag. Ik heb een tabel met koptekst en enkel kolommen. 1 kolom bevat cijfers waarin dubbele waarden voorkomen. Deze dubbele waarden wil ik nu verwijderen maar hij moet de meest recentelijke datum behouden. Dus als in kolom 1 - 3x dezelfde ID voorkomt en hebben als datum 1jan 21, 23 feb 22 en 16 dec 22 dan moet de rij met 16 dec 22 behouden. Doe ik dit via gegevens-verwijder dubbele waarden verwijderen maar dan loop ik vast.
 
Sorteer op datum, meest recente bovenaan (dus van Z naar A) en verwijder daarna de dubbele waarden, de eerste dubbele waarde wordt behouden.
 
Ik heb iets dergelijks met verwijderen van dubbelingen per datum.
Dit werkt met een macro - niet zelf bedacht maar met veel hulp van dit forum :thumb:

1e stap het kopieren van de formule om dubbelingen te lokaliseren.
Vervolgens wordt van boven naar beneden de dubbelingen verwijderd. In dit geval de oudste qua datum als de tabel op datumvolgorde is gesorteerd.
Zo niet dan kan die sortering in de macro worden opgenomen.

In de bijlage is er een opzetje die mogelijk ook werkend te krijgen is voor jouw toepassing. Mij lukt het niet door gebrek aan gedetailleerde kennis van VBA
Mogelijk kan een "VBA specialist" hier verder mee helpen.
 

Bijlagen

  • dubbel.xlsm
    17,9 KB · Weergaven: 7
Beste,

ik gebruik de laatste versie van excel en heb een vraag. Ik heb een tabel met koptekst en enkel kolommen. 1 kolom bevat cijfers waarin dubbele waarden voorkomen. Deze dubbele waarden wil ik nu verwijderen maar hij moet de meest recentelijke datum behouden. Dus als in kolom 1 - 3x dezelfde ID voorkomt en hebben als datum 1jan 21, 23 feb 22 en 16 dec 22 dan moet de rij met 16 dec 22 behouden. Doe ik dit via gegevens-verwijder dubbele waarden verwijderen maar dan loop ik vast.

Zijn het in het geval enkelvoudige dubbelingen of kunnen er ook meervoudige zijn bv 4x dezelfde ID?
 
Met in kolom A de datum en in kolom B de waarde. Dit doet wat er in #2 gezegd is.

Code:
Sub jec()
 With Cells(1).CurrentRegion
   .Sort .Cells(1, 1), 2, , , , , , 1
   .RemoveDuplicates 2, 1
 End With
End Sub
 
Als geïnteresserde:
Simpel en werkt prima.
De datumvolgorde na runnen is van nieuw naar oud.
Door toevoegen van regel 25 kan de volgorde van oud naar nieuw bereikt worden zo daar behoefte aan is.
Code:
Sub jec_2()
10  With Cells(1).CurrentRegion
15   .Sort .Cells(1, 1), 2, , , , , , 1
20   .RemoveDuplicates 2, 1
25   .Sort .Cells(1, 1), 1, , , , , , 1
30  End With
35  End Sub
 
Met in kolom A de datum en in kolom B de waarde. Dit doet wat er in #2 gezegd is.

Code:
Sub jec()
 With Cells(1).CurrentRegion
   .Sort .Cells(1, 1), 2, , , , , , 1
   .RemoveDuplicates 2, 1
 End With
End Sub

Voor een bredere toepassing:
Is er een aanpassing mogelijk om de hele rij van de dubbels te verwijderen ipv een range?
 
Door bvb deze regel te gebruiken

Code:
With Cells(1).CurrentRegion.Resize(, 999)
 
@Brugge,
Als je tevreden bent met de gebode oplossingen wil je dan deze vraag las opgelost markeren? (Recht boven bij je eerste vraagstelling)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan