Comparer 2 colonnes

simrobert21

XLDnaute Nouveau
Bonjour à tous

Dans le fichier ci-joint, j'aimerais beaucoup avoir la possibilité de comparer les données (Nom) dans la colonne D dans la feuilles "ENTREPRENEURS" avec les données de la colonne B dans la feuille "ENTREPRENEURS RÉGULIERS". J'aimerais que les noms présent dans les 2 feuilles soit mis dans la colonne A de la feuille "Doublons reg vs non-reg". J'imagine qu'une macro pourrait faire le travail. Merci de votre aide.
 

Pièces jointes

  • VISITEURS 2009-04-14.zip
    13.9 KB · Affichages: 32

Excel-lent

XLDnaute Barbatruc
Re : Comparer 2 colonnes

Bonsoir SimRobert21,

Voici ci-dessous une macro faisant ce que tu demande :
Code:
Sub ListeDoublons()
' Macro enregistrée par Excel-lent
    
Dim NbLigneEntrepreneurs As Long
Dim NbLigneEntrepreneursRéguliers As Long

Sheets("ENTREPRENEURS RÉGULIERS").Select

With Sheets("ENTREPRENEURS")
    
    NbLigneEntrepreneursRéguliers = [D65536].End(xlUp).Row
    NbLigneEntrepreneurs = .[B65536].End(xlUp).Row

    For i = 2 To NbLigneEntrepreneurs
       For j = 2 To NbLigneEntrepreneursRéguliers
           If .Cells(i, 4) = Cells(j, 2) Then
              Sheets("Doublons reg vs non-reg").Range("A" & Sheets("Doublons reg vs non-reg").[A65536].End(xlUp).Row + 1) = .Cells(i, 4)
           End If
       Next j
    Next i
End With

End Sub

Macro à placer dans "Module" et pouvant être lancé de n'importe quelle onglet!

Attention! ...
Concernant les deux saisies ci-dessous
"Martin DUPONT"
"Martin DUPONT "

L'espace à la fin du Nom, bien qu'étant invisible pour un œil non avertit, est un caractère à part entière, donc la macro ci-dessus considèrera cela comme deux Noms différent!

Bonne soirée

PS. : macro testé sur ton fichier : elle fonctionne
 

JNP

XLDnaute Barbatruc
Re : Comparer 2 colonnes

Bonjour le forum :)
Attention! ...
Concernant les deux saisies ci-dessous
"Martin DUPONT"
"Martin DUPONT "

L'espace à la fin du Nom, bien qu'étant invisible pour un œil non avertit, est un caractère à part entière, donc la macro ci-dessus considèrera cela comme deux Noms différent!
2 solutions pour contrer ce problème, une élégante
Code:
If Trim(.Cells(i, 4)) = Trim(Cells(j, 2)) Then
fonction qui enlève les blancs devant et derrière (il existe aussi LTrim et RTrim pour n'ôter que devant ou que derrière).
Moins élégante
Code:
If Replace(.Cells(i, 4), " ", "") = Replace(Cells(j, 2), " ", "") Then
qui élimine tous les blancs pour la comparaison.
Bonne journée :cool:
 

nolich

XLDnaute Occasionnel
Re : Comparer 2 colonnes

Bonjour simrobert21 et Excel-lent, bonjour à toutes et à tous :)

Excel-lent a raison, simrobert21, et si tu penses avoir des espaces indésirables au début ou à la fin de tes cellules, tu peux modifier cette partie de code d'Excel-lent :

If .Cells(i, 4) = Cells(j, 2) Then

par

If Trim(.Cells(i, 4)) = Trim(Cells(j, 2)) Then

Bonne journée :)

EDIT : Oups ! Salut JNP, je n'avais pas rafraîchi :)
 

Discussions similaires

Réponses
8
Affichages
404
Réponses
6
Affichages
444

Statistiques des forums

Discussions
312 393
Messages
2 088 006
Membres
103 695
dernier inscrit
acimi