éliminer lignes en doublon

  • Initiateur de la discussion Initiateur de la discussion romika
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

romika

XLDnaute Occasionnel
Bonjour,

j'ai deux colonnes dans excel et plusieures lignes. par exemple en A1=ABC, B1=DEF. En A2=DEF et B2=ABC. je voudrais éliminer donc la deuxième ligne car elle est égale à la première à l'envers.

je joins un exemple si ca peut être utile.
j'ai pas besoin de macro forcément, j'essaye avec des formules et filtres, mais j'y arrive pas...

merci pour votre aide.
 

Pièces jointes

Re : éliminer lignes en doublon

Merci pour la formule, je l'ai essayée et effectivement ça marche, même si je comprends pas trop son sens 🙂, mais en rajoutant quelques lignes supplémentaire, elle marche plus.
je joins le nouveau fichier.
une idée? merci
 

Pièces jointes

Re : éliminer lignes en doublon

bonjour romika JCGL
par macro
une qui tiens compte des majuscules l'autre non
par contre ABC aet considere comme doublon vu que present en ligne 10 & 12

Code:
Sub es()
 Dim m As Object, i As Long, z As Variant
    Application.ScreenUpdating = False
    Set m = CreateObject("Scripting.Dictionary")
       For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
      z = UCase(Cells(i, 1)) & UCase(Cells(i, 2))
            If Not m.Exists(z) Then
            m.Add z, z
            Cells(i, 3) = "ok"
       Else
          Cells(i, 3) = "doublons"
      End If
      z = UCase(Cells(i, 2)) & UCase(Cells(i, 1))
            If Not m.Exists(z) Then
            m.Add z, z
            Cells(i, 3) = "ok"
       Else
          Cells(i, 3) = "doublons"
      End If
      Next i
End Sub

Code:
Sub est()
 Dim m As Object, i As Long, z As Variant
    Application.ScreenUpdating = False
    Set m = CreateObject("Scripting.Dictionary")
        For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
      z = Cells(i, 1) & Cells(i, 2)
            If Not m.Exists(z) Then
            m.Add z, z
            Cells(i, 4) = "ok"
       Else
          Cells(i, 4) = "doublons"
      End If
      z = Cells(i, 2) & Cells(i, 1)
            If Not m.Exists(z) Then
            m.Add z, z
            Cells(i, 4) = "ok"
       Else
          Cells(i, 4) = "doublons"
      End If
      Next i
End Sub
 
Re : éliminer lignes en doublon

rebonjour
en partant de ton premier exemple toujours par macro

Code:
Sub aa()
Dim i As Long, j As Long, x, z As Variant
Application.ScreenUpdating = False
For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
x = Cells(i, 1) & Cells(i, 2)
For j = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
z = Cells(j, 2) & Cells(j, 1)
If x = z Then Range(Cells(i, 1), Cells(i, 2)).Delete Shift:=xlUp
Next j: Next i
End Sub

'EntireRow.Delete pour suppression ligne complete
eventuellement on peut conbiner code pour supprimer egalement comme ton exemple 2 pour supprimer les identiques ligne 10 & 12
par formule je suis trop mauvaise pour trouver solution desole🙁
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour