Comparaison de colonne avec mot commun et ajout d'une valeur

Bonjour,

J'ai un fichier dans lequel il y a en A des noms de rues, en B des codes et dans la colone D des adresses.

Je voudrais faire un comparatif entre A et D en sachant qu'il peut y avoir des différences entre A et D.

Lorsqu'il trouve des mots commun entre A et D il copie le code en E (par exemple sur la ligne 4439 colonne D il y a : RUE DES ACACIAS et dans la colonne A ligne 7 il y Acacias (Rue des)

et donc il faut qu'il mette le code de la ligne 7 (0202) dans la ligne 4439 colonne E

Je ne sais pas si j'ai été clair

Merci à vous

Salut Jacques et bienvenue sur le Forum,

Ci-joint ton fichier modifié avec le code ci-dessous :

Sub Dopple()
Dim c, p, x, y As Range, txt As String, Espace As Boolean
Set p = Range("A2:A" & Range("A" & Rows.Count).End(xlUp).Row)
For Each c In p
    If Len(c.Value) = 1 Then GoTo NextIteration
        txt = UCase(Mid(c.Value, 1, InStr(1, c.Value, "(") - 1))
        Espace = False
        Do While Espace = False
            If Right(txt, 1) = " " Then
                txt = Left(txt, Len(txt) - 1)
            Else
                Espace = True
            End If
        Loop
        Set y = Range("D2:D" & Range("D" & Rows.Count).End(xlUp).Row)
        For Each x In y
            If InStr(1, x.Value, txt) >= 1 Then
                If Cells(x.Row, 5) = "" Then
                    Cells(x.Row, 5) = Cells(c.Row, 2)
                Else
                    Cells(x.Row, 5) = Cells(x.Row, 5) & Chr(10) & Cells(c.Row, 2)
                End If
            End If
        Next x
NextIteration:
Next c
End Sub

Je te laisse voir et revenir vers nous!

A dispo!

3pour-jacques.xlsm (210.06 Ko)

Merci beaucoup , je vais regarder tout ça et je reviens vers vous

Re bonjour,

Le principe est ça, mais la façon dont sont écrite les adresses colonnes A avec les () pose un problème car pour "martin" par exemple des fois c'est entre () et des fois non.... et donc ça donne des codes multiples

J'ai voulu modifié la colonne A en mettant ce qui est entre () au début comme ceci : Mac Gaffey (Impasse) en impasse Mac Gaffey pour toute la colonne mais là la macro ne fonctionne plus???

Je vais essayer d'analyser un peu plus la structure de mes adresses afin de voir si je peux faire quelque chose...

Si tu as une idée merci beaucoup et si non encore merci pour cette macro

Re-

Ah oui en effet tu a également des noms entre les ()

Je les avaient exclues de la recherche car tout ce qui allait être "Rue" ; "Impasse" ; "Allée" etc... aller sortir comme résultat

Si tu as une idée

Tu peux me faire une liste de toute les dénominations d'Adresse que tu peut avoir (rue, allée, impasse, chemin, voie etc...)

En cas de détection d'un mot de cette liste on exclue la recherche et on passe à une autre recherche.

A part sa je vois pas comment prendre en compte ce qu'il y a entre les ()

A dispo

Bonjour,

j'ai refait un fichier avec cette fois ci pas de () dans la première colonne afin que ça corresponde plus avec les données de la colonne D

Un autre soucis que j'ai rencontré et que il peut y avoir par exemple

Rue des Acacias

Avenue des acacias

et donc ils peuvent avoir un code différent.... mais ce n'est vraiment pas la majorité

il peut y avoir des différences comme:

Colonne A : PLACE PARNASSE

Colonne D : PLACE DU PARNASSE

Et là où ça se complique est pour ce genre d'adresse :

RUE LOUISE MICHEL

RUE MICHELET

Rue Michel Chasles

Rue Michel Colucci dit Coluche

Rue Michel Crépeau

etc....

et donc il va créer des codes multiples chaque fois qu'il rencontre michel.....

Et en dénomination on a

Allée

rue

Avenue

Av

bassin

boulevard

carrefour

chemin

cours

impasse

place

passage

pont

quai

rond-point

route

square

C'est un problème pas évident à résoudre....

Merci à toi

Rechercher des sujets similaires à "comparaison colonne mot commun ajout valeur"