XL 2016 Supprimer des lignes à l'aide de VBA avec une condition

Anr1

XLDnaute Occasionnel
Supporter XLD
Bonjour tt le monde,

J'aimerais bien avoir un programme VBA pour supprimer les doublons avec la condition de l'année la plus récente.

Ce que je veux c'est de garder une ligne par doublons de la dernière année!

Vous trouverez en pièce joint une exemple avec la résultats souhaité.

NB: mon fichier de travail contient bcp des lignes

Merci par avance :)
 

Pièces jointes

  • VBA test.xlsx
    20.5 KB · Affichages: 9
Solution
Bonjour anouarlachiri,
VB:
Sub Supprimer_Doublons()
With [A5].CurrentRegion
    .Sort .Cells(1), xlAscending, .Cells(1, 2), , xlDescending, Header:=xlYes 'tri sur 2 colonnes
    .RemoveDuplicates 1 'supprime les doublons
End With
End Sub
A+

job75

XLDnaute Barbatruc
Bonjour anouarlachiri,
VB:
Sub Supprimer_Doublons()
With [A5].CurrentRegion
    .Sort .Cells(1), xlAscending, .Cells(1, 2), , xlDescending, Header:=xlYes 'tri sur 2 colonnes
    .RemoveDuplicates 1 'supprime les doublons
End With
End Sub
A+
 

Pièces jointes

  • VBA test(1).xlsm
    19.3 KB · Affichages: 5

job75

XLDnaute Barbatruc
Re; bonsoir AC045364,

Si l'on veut les résultats dans une autre feuille c'est très simple, le code de la 2ème feuille :
VB:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Cells.Delete 'RAZ
Feuil1.[A5].CurrentRegion.Copy [A1]
With UsedRange
    .Sort .Cells(1), xlAscending, .Cells(1, 2), , xlDescending, Header:=xlYes 'tri sur 2 colonnes
    .RemoveDuplicates 1 'supprime les doublons
End With
End Sub
La macro se déclenche quand on active la feuille.

A+
 

Pièces jointes

  • VBA test(2).xlsm
    19.1 KB · Affichages: 5

Anr1

XLDnaute Occasionnel
Supporter XLD
Re; bonsoir AC045364,

Si l'on veut les résultats dans une autre feuille c'est très simple, le code de la 2ème feuille :
VB:
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Cells.Delete 'RAZ
Feuil1.[A5].CurrentRegion.Copy [A1]
With UsedRange
    .Sort .Cells(1), xlAscending, .Cells(1, 2), , xlDescending, Header:=xlYes 'tri sur 2 colonnes
    .RemoveDuplicates 1 'supprime les doublons
End With
End Sub
La macro se déclenche quand on active la feuille.

A+
Mon problème est résolu grâce à vous!

Merci :)
 

Discussions similaires