Répérer les lignes dont les valeurs doublonnent sur une plage
Fermé
bambifioule
Messages postés
13
Date d'inscription
lundi 24 septembre 2012
Statut
Membre
Dernière intervention
26 avril 2015
-
26 avril 2015 à 13:10
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 - 26 avril 2015 à 21:48
via55 Messages postés 14495 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 7 novembre 2024 - 26 avril 2015 à 21:48
A voir également:
- Répérer les lignes dont les valeurs doublonnent sur une plage
- Excel trier par ordre alphabétique en gardant les lignes - Guide
- Comment aller à la ligne sur excel - Guide
- Afficher toutes les lignes masquées excel ✓ - Forum Excel
- Image de manchots sur une image de plage ✓ - Forum Graphisme
- Frédéric cherche à faire le buzz sur les réseaux sociaux. il a ajouté une image d’ours polaire sur une image de plage. retrouvez l'image originale de la plage. que cache l'ours polaire ? - Forum Loisirs / Divertissements
2 réponses
via55
Messages postés
14495
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
7 novembre 2024
2 734
26 avril 2015 à 14:41
26 avril 2015 à 14:41
Bonjour bambifioule
Par formule, longue formule en D1, à étirer ensuite :
=SI(ET(SIERREUR(EQUIV(A3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(A3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(A3;$C$2:$C$5;0);0)<>LIGNE()+1;SIERREUR(EQUIV(B3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(B3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(B3;$C$2:$C$5;0);0)=SIERREUR(EQUIV(A3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(A3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(A3;$C$2:$C$5;0);0);SIERREUR(EQUIV(C3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(C3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(C3;$C$2:$C$5;0);0)=SIERREUR(EQUIV(A3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(A3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(A3;$C$2:$C$5;0);0));"doublon";"")
mais possible aussi avec une fonction personnalisée, exemple à partir de tes données :
https://www.cjoint.com/?0DAoORYTWJT
Cdlmnt
Via
Par formule, longue formule en D1, à étirer ensuite :
=SI(ET(SIERREUR(EQUIV(A3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(A3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(A3;$C$2:$C$5;0);0)<>LIGNE()+1;SIERREUR(EQUIV(B3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(B3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(B3;$C$2:$C$5;0);0)=SIERREUR(EQUIV(A3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(A3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(A3;$C$2:$C$5;0);0);SIERREUR(EQUIV(C3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(C3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(C3;$C$2:$C$5;0);0)=SIERREUR(EQUIV(A3;$A$2:$A$5;0);0)+SIERREUR(EQUIV(A3;$B$2:$B$5;0);0)+SIERREUR(EQUIV(A3;$C$2:$C$5;0);0));"doublon";"")
mais possible aussi avec une fonction personnalisée, exemple à partir de tes données :
https://www.cjoint.com/?0DAoORYTWJT
Cdlmnt
Via
bambifioule
Messages postés
13
Date d'inscription
lundi 24 septembre 2012
Statut
Membre
Dernière intervention
26 avril 2015
26 avril 2015 à 20:36
26 avril 2015 à 20:36
26 avril 2015 à 20:54
Je suis entrain de compléter le code que tu as écrit, mais sur la fin, je ne sais pas trop comment faire :
Function doublons(cellule As Range)
doublons = ""
Dim dl As Long
'derniere ligne remplie
dl = Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row + 1
'ligne et colonne de la plage
lig = cellule.Row
col = cellule.Column
' valeurs de la cellule et des 2 cellules à droite
a = Cells(lig, col).Value
b = Cells(lig, col + 1).Value
c = Cells(lig, col + 2).Value
d = Cells(lig, col + 3).Value
e = Cells(lig, col + 4).Value
'boucle sur les lignes du tableau
For t = 2 To dl
' si autre ligne que celle de la formule
If t <> lig Then
' valeurs des 3 cellules de cette ligne
a2 = Cells(t, col).Value
b2 = Cells(t, col + 1).Value
c2 = Cells(t, col + 2).Value
' comparaison avec les valeurs de la ligne de la formule et si identique doublon
If (a = a2 And (b = b2 And c = c2 Or b = c2 And c = b2)) Or (a = b2 And (b = a2 And c = c2 Or b = c2 And c = a2)) Or (a = c2 And (b = b2 And c = a2 Or b = a2 And c = b2)) Then doublons = "doublon"
End If
Next
End Function
26 avril 2015 à 21:03
Avec 5 colonnes ç'est plus complexe il faut envisager tous les cas de figure dans le IF; ça devient mission sinon impossible mais du moins ardue car là il n'y a pas 6 possibilités comme précédemment mais 120 !!
Il faut trouver une autre méthode; j'y réfléchis et je te fais retour dès que possible
26 avril 2015 à 21:09
Merci à toi, c'est vraiment très sympathique de rendre service ;)
Modifié par via55 le 26/04/2015 à 21:50
Je t'ai donc répondu en MP
Cdlmnt
Via