Traitement doublon de mot dans cellules

Karoman -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, à vous tous,

J'envoi ce message au grand désespoir de réponse car je butine grave....

Je dois traiter une base de données clients. Ces données sont extraites sous un fichier excel dans deux colonnes A _ Nom du client (tout simple) / B _ Code client (numéro de compte de facturation unique à chaque création)

Le soucis étant que certains clients sont créés en doublon donc lors de l'extraction peu apparaître des doublons. Soucis étant que le contenu de la cellule n'est pas identique je m'explique A1 : "commentcamarche" / A123 : "société commentcamarche" / A156 "sarl commentcamarche" / A234 : "commentcamarche et fils"

Existe_il une formule rapide qui permet de surligner les doublons de noms (ou de caractères). Mais attention je ne sais pas quels sont les caractères étant en doublons, je veux dire les noms de clients étant en doublons (ce qui serait nettement plus simple)

L'idéal serait que mes doublons soient automatiquement classer dans une nouvelle feuilles avec les numéro de compte clients eux aussi reportés.

Je doute que ceci soit réalisable directement, mais je suis à l'écoute de toutes propositions m'évitant un travail de recherche titanesque.

Merci d'avance de vos réponses, je précise que j'utilise excel 2007, et que j'ai à disposition le pack office, donc pourquoi pas aussi effectuer cette recherche sous word ? ou publisher ? voire access ?

J'ai la possibilité de fournir un exemple de tableau,

2 réponses

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonsoir

    SI les doublons ont cependant le même code que tu dis unique par entreprise), possible par macro de lister par code dans une 2eme feuille les noms correspondant au même code avec indication des lignes où ils se trouvent

    Exemple de macro avec une 1ere feuille appelée DONNEES et la 2eme feuille appelée DOUBLONS

    Sub Tri_doublons()
    ' variable pour ligne dans DOUBLONS
    y = 1
    ' derniere ligne remplie dans DONNEES
    Dim Ligne As Long
    Ligne = Sheets("DONNEES").Columns(2).Find("*", , , , xlByColumns, xlPrevious).Row
    ' Boucle sur les lignes de DONNEES à partir de la ligne 2
    For n = 2 To Ligne
    ' recupere code en col B
    num = Sheets("DONNEES").Range("B" & n).Value
    ' si le code est présent plusieurs fois en B
    If Application.WorksheetFunction.CountIf(Sheets("DONNEES").Range("B:B"), num) > 1 Then
    ' recherche le code en colonne 2 de DOUBLONS
    Set Trouve = Sheets("DOUBLONS").Columns(2).Cells.Find(what:=num, LookAt:=xlWhole)
    ' s'il n'existe pas (cas non encore traité)
    If Trouve Is Nothing Then
    ' boucle sur les lignes en dessous de la ligne actuelle
    For x = n To Ligne
    ' si même code
    If Sheets("DONNEES").Range("B" & x).Value = num Then
    'incrémentation de la variable de ligne de DOUBLONS
    y = y + 1
    ' inscrption dans DOUBLONS du nom, du code et du n° de ligne correspondante dans DONNEES
    Sheets("DOUBLONS").Range("A" & y) = Sheets("DONNEES").Range("A" & x)
    Sheets("DOUBLONS").Range("B" & y) = num
    Sheets("DOUBLONS").Range("C" & y) = x
    End If
    Next x
    End If
    End If
    Next n
    End Sub


    A Adapter à tes besoins

    ALT +F11 pour ouvrir l'éditeur
    Onglet Insertion Module
    Copier et coller le code dans la page et modifier ce qui est necessaire (noms des feuilles par exemple)
    Fermer l'éditeur

    De retour sur la feuille lancer la macro à partir de l'onglet Developpeur Macros

    Cdlmnt

    0
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    Ce que j'avais réalisé pour une demande similaire.
    Il faut définir une liste de mots exclus (SA, Cie, Fils, ...), les mots clés restant de plus de 2 lettres (paramétrable) sont mis dans une colonne B insérée, triés.
    Ex :
    'Entreprise pierre bertrand louis' et 'bertrand pierre louis et frères SA' ont pour mots clés : bertrand-louis-pierre (identique malgré l'inversion de prénoms).

    Il reste juste à ajouter un filtre après traitement pour traiter les doublons
    https://www.cjoint.com/?DLdbmX9Dt4z

    eric
    0