• Initiateur de la discussion Initiateur de la discussion al2008
  • 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 !

A

al2008

Guest
Bonjour à tous,

je suis nouveau sur le forum, j ai regardé les solutions proposées pour le tri de doublons mais je n' ai pas trouvé une solution que j aurai pu adapter.🙁

j ai fichier source avec 2 colonnes, certaines valeurs sont présentes sur les
2 colonnes, d'autres valeurs sont présentes uniquement dans la colonne A ou la colonne B .

je souhaiter créer trois tabeau

1. le premier tableau liste les valeurs présentes sur les deux colonnes

2. le deuxième tableau les valeurs qui ne sont présentes que dans la colonne A

3.2. le troisième tableau les valeurs qui ne sont présentes que dans la colonne B .


merci de votre aide.🙂
je vous joints le fichier d exemple en pièce jointe.

à bientot
 

Pièces jointes

Re : recuperer doublons

Salut,

Voici un code qui fonctionne sur ton fichier tel quel :
Code:
Sub test()
Dim i%, k%
Dim bool1 As Boolean
Dim tablo1(0 To 100)
Dim tablo2(0 To 100)
Dim tablo3(0 To 100)
Dim cpt_tablo1%, cpt_tablo2%, cpt_tablo3%

Range("D4:F100").ClearContents
For i = 4 To Range("A65536").End(xlUp).Row
    bool1 = False
    For k = 4 To Range("B65536").End(xlUp).Row
        If Cells(i, 1).Value = Cells(k, 2).Value Then
            bool1 = True
            Exit For
        End If
    Next k
    If bool1 = True Then
        tablo1(cpt_tablo1) = Cells(i, 1).Value
        cpt_tablo1 = cpt_tablo1 + 1
    End If
    If bool1 = False Then
        tablo2(cpt_tablo2) = Cells(i, 1).Value
        cpt_tablo2 = cpt_tablo2 + 1
    End If
Next i
For k = 4 To Range("B65536").End(xlUp).Row
    bool1 = False
    For i = 4 To Range("A65536").End(xlUp).Row
        If Cells(k, 2).Value = Cells(i, 1).Value Then
            bool1 = True
            Exit For
        End If
    Next i
    If bool1 = False Then
        tablo3(cpt_tablo3) = Cells(k, 2).Value
        cpt_tablo3 = cpt_tablo3 + 1
    End If
Next k
For p = 0 To UBound(tablo1)
    If tablo1(p) = "" Then Exit For
    Cells(Range("D65536").End(xlUp).Row + 1, 4).Value = tablo1(p)
Next p
For p = 0 To UBound(tablo2)
    If tablo2(p) = "" Then Exit For
    Cells(Range("E65536").End(xlUp).Row + 1, 5).Value = tablo2(p)
Next p
For p = 0 To UBound(tablo3)
    If tablo3(p) = "" Then Exit For
    Cells(Range("F65536").End(xlUp).Row + 1, 6).Value = tablo3(p)
Next p
End Sub

Il y a surement plus simple, mais j'avais envie de m'amuser avec des tableaux et booleen... 😛

@+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
315
Réponses
2
Affichages
287
Réponses
7
Affichages
281
Réponses
8
Affichages
836
Retour