Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Effacer ligne doublon

4 réponses
Avatar
Jacquouille
Chers amis du soir, bonsoir
Pour un dossier dans lequel il y a environ 250 lignes, je voudrais que si la
cel A est égale à la cel A précédente (A-1), supprimer la ligne entière.
Je bloque sur le Entire.row(i).delete.
Un petit coup de pouce, svp?
Merci
Jacques
----------------------------
Sub EffacerLigneDoublon()
X = 1
For i = 3 To Range("A65536").End(xlUp).Row
If Range("A" & i) = Range("A" & i - 1) Then
entire.Row(i).Delete
X = X + 1
End If
Next
End Sub
--
Jacquouille conseille : http://www.excelabo.net

NoSpam_j.thiernesse@skynet.be

4 réponses

Avatar
Jacquouille
La meilleure façon d'apprendre et de monter dans les stats est de se
répondre personnellement:
Mon cher Jacques, remplace ta ligne par celle-ci
Rows(i).Delete
Ensuite, enlève le compteur X=1 et X = X+1 qui ne sert à rien.
Bien à toi
Jacques.

--
Jacquouille conseille : http://www.excelabo.net


"Jacquouille" a écrit dans le message news:
#$
Chers amis du soir, bonsoir
Pour un dossier dans lequel il y a environ 250 lignes, je voudrais que si
la

cel A est égale à la cel A précédente (A-1), supprimer la ligne entière.
Je bloque sur le Entire.row(i).delete.
Un petit coup de pouce, svp?
Merci
Jacques
----------------------------
Sub EffacerLigneDoublon()
X = 1
For i = 3 To Range("A65536").End(xlUp).Row
If Range("A" & i) = Range("A" & i - 1) Then
entire.Row(i).Delete
X = X + 1
End If
Next
End Sub
--
Jacquouille conseille : http://www.excelabo.net






Avatar
ChrisV
Salut Jacquouille,

Et si les données de la colonne A sont non-triées...?
;-)

Sub supprDoublons()
Dim i As Long, derL As Long
Application.ScreenUpdating = False
derL = [A65536].End(xlUp).Row
For i = derL To 3 Step -1
If Application.CountIf(Range("A1:A" & derL), _
Cells(i, 1).Value) > 1 Then Rows(i).Delete
Next i
End Sub


ChrisV


"Jacquouille" a écrit dans le message de
news:
La meilleure façon d'apprendre et de monter dans les stats est de se
répondre personnellement:
Mon cher Jacques, remplace ta ligne par celle-ci
Rows(i).Delete
Ensuite, enlève le compteur X=1 et X = X+1 qui ne sert à rien.
Bien à toi
Jacques.

--
Jacquouille conseille : http://www.excelabo.net


"Jacquouille" a écrit dans le message
news:

#$
Chers amis du soir, bonsoir
Pour un dossier dans lequel il y a environ 250 lignes, je voudrais que
si


la
cel A est égale à la cel A précédente (A-1), supprimer la ligne entière.
Je bloque sur le Entire.row(i).delete.
Un petit coup de pouce, svp?
Merci
Jacques
----------------------------
Sub EffacerLigneDoublon()
X = 1
For i = 3 To Range("A65536").End(xlUp).Row
If Range("A" & i) = Range("A" & i - 1) Then
entire.Row(i).Delete
X = X + 1
End If
Next
End Sub
--
Jacquouille conseille : http://www.excelabo.net










Avatar
Jacquouille
Bonjour Chris
En fait, dès le départ, j'ai remarqué que mon bidule laissait les triblons,
quadriblons et autres blons. Etant atteint ces jours-ci par une grippe de
cheval, j'ai décidé de laisser ainsi et de trier d'abord puis faire
fonctionner la macro deux ou trois fois.
En fait, je pensais commencer par le bas, avec un step -1 pour éviter le
problème des tribblons. Mais je partais toujours du principe de la colonne
triée.
Ton filet de macro vient donc bien à point (à qui sait attendre). Dieu vous
le rendra au centuple ( ? ) et que le Saint Père La Brosse te bénisse.
Mile merci et bonne fin de semaine.
Jacques
--
Jacquouille conseille : http://www.excelabo.net


"ChrisV" a écrit dans le message news:

Salut Jacquouille,

Et si les données de la colonne A sont non-triées...?
;-)

Sub supprDoublons()
Dim i As Long, derL As Long
Application.ScreenUpdating = False
derL = [A65536].End(xlUp).Row
For i = derL To 3 Step -1
If Application.CountIf(Range("A1:A" & derL), _
Cells(i, 1).Value) > 1 Then Rows(i).Delete
Next i
End Sub


ChrisV


"Jacquouille" a écrit dans le message de
news:
La meilleure façon d'apprendre et de monter dans les stats est de se
répondre personnellement:
Mon cher Jacques, remplace ta ligne par celle-ci
Rows(i).Delete
Ensuite, enlève le compteur X=1 et X = X+1 qui ne sert à rien.
Bien à toi
Jacques.

--
Jacquouille conseille : http://www.excelabo.net


"Jacquouille" a écrit dans le message
news:

#$
Chers amis du soir, bonsoir
Pour un dossier dans lequel il y a environ 250 lignes, je voudrais que
si


la
cel A est égale à la cel A précédente (A-1), supprimer la ligne
entière.



Je bloque sur le Entire.row(i).delete.
Un petit coup de pouce, svp?
Merci
Jacques
----------------------------
Sub EffacerLigneDoublon()
X = 1
For i = 3 To Range("A65536").End(xlUp).Row
If Range("A" & i) = Range("A" & i - 1) Then
entire.Row(i).Delete
X = X + 1
End If
Next
End Sub
--
Jacquouille conseille : http://www.excelabo.net














Avatar
ChrisV
;-)

Merci, et bonne fin de semaine à toi aussi Jacquouille.


ChrisV


"Jacquouille" a écrit dans le message de
news: #
Bonjour Chris
En fait, dès le départ, j'ai remarqué que mon bidule laissait les
triblons,

quadriblons et autres blons. Etant atteint ces jours-ci par une grippe de
cheval, j'ai décidé de laisser ainsi et de trier d'abord puis faire
fonctionner la macro deux ou trois fois.
En fait, je pensais commencer par le bas, avec un step -1 pour éviter le
problème des tribblons. Mais je partais toujours du principe de la
colonne

triée.
Ton filet de macro vient donc bien à point (à qui sait attendre). Dieu
vous

le rendra au centuple ( ? ) et que le Saint Père La Brosse te bénisse.
Mile merci et bonne fin de semaine.
Jacques
--
Jacquouille conseille : http://www.excelabo.net