Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Detection de doublons

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

B

boudoula

Guest
Bonjour à tous,

je suis à la recherche d'un code qui me permettrait de détecter des doublons.
J'ai des fichiers texte que j'importe dans une colonne et je voudrais savoir comment faire pour tester chaque cellules une à une pour savoir si des données sont en double

merci d'avance pour vos réponses
 
Re : Detection de doublons

Bonjour, boudoula.

Il existe plusieurs centaines de posts concernant la recherche des doublons.
Pour effectuer la recherche, et si les discussions similaires (ci-dessous) ne vous apportent pas la réponse souhaitée, la loupe (en haut et à droite de cette page) devrait vous aider.
 
Re : Detection de doublons

Re
je viens de parcourir diverses solutions mais elles ne répondent pas à mon besoin.
mes cellules contiennent du texte, et toutes les colonnes ne font pas la meme longueur. Admettons que mon tableau soit A1:W368, je veux prendre chaque valeur une à une et faire un test dans toutes les autres cases du tableau puis si un doublons et trouvé colorié les cellules contenant des doublons
 
Re : Detection de doublons

Salut boudoula,
un grand salut a Victor,
un petit fichier exemple avec des donnees bidon sera necessaire pour repondre a ta questio.
@ te relire
Rachid
 
Re : Detection de doublons

Re, Bonjour, Rachid 😉
La mise en forme conditionnelle est dans ce cas faite pour vous.
Sélectionnez A1:W368
Format, mise en forme conditionnelle, la formule est :
=ET(A1<>"";NB.SI($A$1:$W$368;A1)>0)
et choisissez la mise en forme souhaitée.
 
Re : Detection de doublons

Salut Boudoula,Rachid

VB:
 Sub reperer_doublons()
Dim Lig As Integer, Col As Integer
For Lig = 1 To 368
For Col = 1 To 23
If WorksheetFunction.CountIf(Range(Cells(Lig, 1), Cells(Lig, 23)), Cells(Lig, Col)) > 1 Then
Cells(Lig, Col).Interior.ColorIndex = 33
End If
Next
Next
End Sub

A Adapter au nombre de lignes et de colonnes
La recherche sur le forum m'a pris 2 mns
A plus
 
Re : Detection de doublons

merci pour vos recherches plus efficaces que moi, meme si j'avais vu ces solutions, mais la recherche de doublon se fait en ligne et non pas en ligne et en colonne !!!
 
Re : Detection de doublons

Bonjour le fil 🙂,
Les !!!! ne servent à rien et ne vont pas inciter les gens à t'aider 😡...
J'étais parti sur la même idée que Victor, mais en plus simple, vu que j'ai appris que les cellules vides n'étaient pas prises en compte par NB.SI 😛
Le fichier en retour, où j'ai été obligé de créer un doublon, vu qu'il n'yen avais pas (excellent, l'exemple 😱...)
Bonne suite 😎
 

Pièces jointes

Re : Detection de doublons

en effet les !!!! ne servent à rien pas plus que la remarque sur "La recherche sur le forum m'a pris 2 mns", je suis novice et une chose évidente pour certain ne l'es pas forcement pour d'autre.
Merci pour la proposition qui à l'air de tres bien fonctionner
 
Re : Detection de doublons

Bonjour,

Voir pj

Code:
Sub doublonsChampCmt()
  couleurs = Array(0, 1, 3, 4, 7, 8, 14, 15, 16, 17, 21, 22, 23, 25, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40, 42, 43, 44, 45, 46, 50, 53)
  Set champ = Range("A1:W100")
  champ.Interior.ColorIndex = xlNone
  champ.ClearComments
  Set d = CreateObject("Scripting.Dictionary")
  Set d2 = CreateObject("Scripting.Dictionary")
  For Each c In champ
    If c.Value <> "" Then
      d.Item(c.Value) = d.Item(c.Value) + 1
      d2.Item(c.Value) = _
         d2.Item(c.Value) & c.Address & " "
    End If
  Next c
  For Each c In champ
    If d.Item(c.Value) > 1 Then
       nocoul = (Application.Match(c.Value, d.keys, 0)) Mod UBound(couleurs)
       c.Interior.ColorIndex = couleurs(nocoul)
       c.AddComment
       temp = c.Value
       c.Comment.Text Text:=Left(d2.Item(temp), Len(d2.Item(temp)) - 1)
       c.Comment.Shape.Left = c.Offset(, 1).Left + 10
       c.Comment.Shape.TextFrame.AutoSize = True
       c.Comment.Visible = True
    End If
  Next c
End Sub

http://boisgontierjacques.free.fr/fichiers/Cellules/DoublonsDetectionChamp.xls

JB
 

Pièces jointes

Dernière édition:
Re : Detection de doublons

Re 🙂,
@ Victor : ne serait-ce pas plutôt > 1 🙄 ?...
Sinon, pour accélérer le calcul en ne faisant pas le NB.SI pour les cellules vierges
Code:
=SI(A1<>"";NB.SI($A$1:$W$391;A1)>1;FAUX)
Bonne suite 😎
 
Re : Detection de doublons

WAouh merci bien le code de BOISGONTIER à l'air de trop bien fonctionner et en plus le fichier n'est plus ralenti, un grand merci pour vos aides, certes je ne comprend rien sur comment marche le code, ça me fera une occupation à mes heures perdues.
 
Re : Detection de doublons

Bonsoir à tous.

Pour tenir compte de la précision -tardive- du demandeur
merci [...] mais la recherche de doublon se fait en ligne et non pas en ligne et en colonne !!!
et la remarque judicieuse de JNP 🙂
j'ai appris que les cellules vides n'étaient pas prises en compte par NB.SI
(Maintenant moi aussi, grâce à toi 😉) essayez :
=NB.SI($A1:$W1;A1)>1
 
- 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
16
Affichages
556
Réponses
17
Affichages
785
Réponses
17
Affichages
614
  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
663
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…