OVH Cloud OVH Cloud

Effacement de doublons

13 réponses
Avatar
AZERTY
Bonjour à tous,

dans une liste, j'aurai besoin d'effacer les doublons sauf la ligne avec la
date la plus récente, le tout trié par date.Je m'explique par lexemple:


Avant:


NUM QTE DATE

1014 8 31-01-2005
1015 6 31-01-2005
1015 4 31-12-2004
1015 6 28-02-2005
1016 6 31-01-2005
1016 4 11-02-2005

Après:

NUM QTE DATE

1014 8 31-01-2005
1015 6 28-02-2005
1016 4 11-02-2005

Comment puis-je m'y prendre?


Merci.

Az.

3 réponses

1 2
Avatar
AZERTY
Ca y est, ça marche...
En fait, juste en changeant le tri de date:


Worksheets("Feuil1").Range("A1:C11").Sort Key1:=[A2], Key2:=[C2],
order2:=xlAscending, Header:=xlGuess

Sinon, il ne supprimait rien.

Merci bcp !

Az.




"ChrisV" a écrit dans le message de news:

Bonjour Azerty,

Selon les données de ton exemple, et avec la plage A1:C7 nommée ici Zn...

Sub zaza()
Dim i As Long, derL As Long
Application.ScreenUpdating = False
[Zn].Sort Key1:=[A2], Key2:=[C2], Header:=xlGuess
derL = [A65536].End(xlUp).Row
For i = derL To 2 Step -1
If Cells(i, 1) = Cells(i - 1, 1) And Cells(i, 3) >= Cells(i - 1, 3)
Then
Rows(i - 1).Delete
End If
Next i
End Sub


ChrisV


"AZERTY" a écrit dans le message de news:
d0mjvg$rm1$
Bonjour à tous,

dans une liste, j'aurai besoin d'effacer les doublons sauf la ligne avec
la date la plus récente, le tout trié par date.Je m'explique par
lexemple:


Avant:


NUM QTE DATE

1014 8 31-01-2005
1015 6 31-01-2005
1015 4 31-12-2004
1015 6 28-02-2005
1016 6 31-01-2005
1016 4 11-02-2005

Après:

NUM QTE DATE

1014 8 31-01-2005
1015 6 28-02-2005
1016 4 11-02-2005

Comment puis-je m'y prendre?


Merci.

Az.







Avatar
ChrisV
Merci bcp !


De rien...! >:-)


ChrisV


"AZERTY" a écrit dans le message de news:
d0paf5$9mp$
Ca y est, ça marche...
En fait, juste en changeant le tri de date:


Worksheets("Feuil1").Range("A1:C11").Sort Key1:=[A2], Key2:=[C2],
order2:=xlAscending, Header:=xlGuess

Sinon, il ne supprimait rien.

Merci bcp !

Az.




"ChrisV" a écrit dans le message de news:

Bonjour Azerty,

Selon les données de ton exemple, et avec la plage A1:C7 nommée ici Zn...

Sub zaza()
Dim i As Long, derL As Long
Application.ScreenUpdating = False
[Zn].Sort Key1:=[A2], Key2:=[C2], Header:=xlGuess
derL = [A65536].End(xlUp).Row
For i = derL To 2 Step -1
If Cells(i, 1) = Cells(i - 1, 1) And Cells(i, 3) >= Cells(i - 1,
3) Then
Rows(i - 1).Delete
End If
Next i
End Sub


ChrisV


"AZERTY" a écrit dans le message de news:
d0mjvg$rm1$
Bonjour à tous,

dans une liste, j'aurai besoin d'effacer les doublons sauf la ligne avec
la date la plus récente, le tout trié par date.Je m'explique par
lexemple:


Avant:


NUM QTE DATE

1014 8 31-01-2005
1015 6 31-01-2005
1015 4 31-12-2004
1015 6 28-02-2005
1016 6 31-01-2005
1016 4 11-02-2005

Après:

NUM QTE DATE

1014 8 31-01-2005
1015 6 28-02-2005
1016 4 11-02-2005

Comment puis-je m'y prendre?


Merci.

Az.











Avatar
AZERTY
Sisi, vraiment.
Ca m'enlève une fière chandelle du pied.

Et en avance d'une demi journée en plus.

Fallait que j'ai fini ce petit truc avant demain.

Donc, si, merci encore.

Az.

"ChrisV" a écrit dans le message de news:

Merci bcp !


De rien...! >:-)


ChrisV


"AZERTY" a écrit dans le message de news:
d0paf5$9mp$
Ca y est, ça marche...
En fait, juste en changeant le tri de date:


Worksheets("Feuil1").Range("A1:C11").Sort Key1:=[A2], Key2:=[C2],
order2:=xlAscending, Header:=xlGuess

Sinon, il ne supprimait rien.

Merci bcp !

Az.




"ChrisV" a écrit dans le message de news:

Bonjour Azerty,

Selon les données de ton exemple, et avec la plage A1:C7 nommée ici
Zn...

Sub zaza()
Dim i As Long, derL As Long
Application.ScreenUpdating = False
[Zn].Sort Key1:=[A2], Key2:=[C2], Header:=xlGuess
derL = [A65536].End(xlUp).Row
For i = derL To 2 Step -1
If Cells(i, 1) = Cells(i - 1, 1) And Cells(i, 3) >= Cells(i - 1,
3) Then
Rows(i - 1).Delete
End If
Next i
End Sub


ChrisV


"AZERTY" a écrit dans le message de news:
d0mjvg$rm1$
Bonjour à tous,

dans une liste, j'aurai besoin d'effacer les doublons sauf la ligne
avec la date la plus récente, le tout trié par date.Je m'explique par
lexemple:


Avant:


NUM QTE DATE

1014 8 31-01-2005
1015 6 31-01-2005
1015 4 31-12-2004
1015 6 28-02-2005
1016 6 31-01-2005
1016 4 11-02-2005

Après:

NUM QTE DATE

1014 8 31-01-2005
1015 6 28-02-2005
1016 4 11-02-2005

Comment puis-je m'y prendre?


Merci.

Az.















1 2