Macro de rechercheV mais sur 3 caractères

Freddy

XLDnaute Junior
bonjour,

je souhaiterais savoir si quelqu'un à une idée pour renvoyer en colonne C toutes les lignes des colonnes A et B ayant en commun trois caractères successifs ...

Pour etre plus clair,
j ai des noms d'entreprises en A
J'ai une autre liste de nom d entreprise en B

comme les noms peuvent varier légèrement, je souhaite mettre en evidence toutes les lignes ayant au moins 3 caractères sucessifs en commun entre A et B ....

si quelqun a une idée ... ca m 'eviterait de m'envoyer un comparatif de 2000 lignes ;) lool


Merci
Fred
 

Freddy

XLDnaute Junior
Re : Macro de rechercheV mais sur 3 caractères

Je ne sais pas si j ai bien compris ta réponse Staple...

Mais dans l'idée, je ne souhaite pas trouver abc ... mais la valeure correspondante à la ligne ...

soit
abc en ligne 1
gth en ligne 2
htk en ligne 3
kjf en ligne 4
etc etc ...

pour etre plus clair,
j ai deux listes de 1500 entreprise à comparer ... avec des noms d entreprises qui sont parfois différents pour une meme entreprise

en A1 par exemple l 'entreprise "trucchose"
en B1502 l'entreprise "trucchoseSA - inc"

les deux dénomiations etant sensiblement différentes, j aimerais ne rechercher que sur trois caractères identiques ... exemple, "tru" se retrouve en A1 et en B 1501 dons j aimerais le mettre en surbrillance ou le mettre en evidence ;)

suis je plus clair ?

Merci
Fred
 

wilfried_42

XLDnaute Barbatruc
Re : Macro de rechercheV mais sur 3 caractères

Bonjour à tous

une petite fonction personnalisées, à placer dans un module
Code:
Function y_a_t_il(target As Range, cellule As Range, nbcar As Integer) As Boolean
        Application.Volatile
        Dim i As Integer
        y_a_t_il = False
        If Len(target) <= nbcar Then
            If InStr(cellule, target) > 0 Then y_a_t_il = True
            Exit Function
        End If
        For i = 1 To Len(target) - nbcar
            If InStr(cellule, Mid(target, i, nbcar)) > 0 Then
                y_a_t_il = True
                Exit Function
            End If
        Next i
End Function

une petite MFC sur toute la zone avec en formule
=y_a_t_il($A1;$B1;3)

3 etant le nombre de caracteres consecutifs à tester

ensuite choisir le format
 

Freddy

XLDnaute Junior
Re : Macro de rechercheV mais sur 3 caractères

cool !c a fait quasi ce que je veux...le seul souci c est qu'il renvoie la réponse "vrai ou faux" ...ce qui moi me permet seulemetn de savoir que l'entreprise lambda à une homonyme au moins sur 3 caractères...) quelque part dans cette liste de 1500... à la place de vrai, ne pourrait on pas afficher le nome de l entreprise qu'il a trouvé ?
 

wilfried_42

XLDnaute Barbatruc
Re : Macro de rechercheV mais sur 3 caractères

re:

j'avais fait cette macro pour faire une MFC, pour une fois que je prevois quelque chose de joli ......:D

Code:
Function y_a_t_il(target As Range, cellule As Range, nbcar As Integer) As [COLOR="Red"]string[/COLOR]
        Application.Volatile
        Dim i As Integer
        y_a_t_il = [COLOR="red"]""[/COLOR]
        If Len(target) <= nbcar Then
            If InStr(cellule, target) > 0 Then y_a_t_il = [COLOR="red"]cellule[/COLOR]
            Exit Function
        End If
        For i = 1 To Len(target) - nbcar
            If InStr(cellule, Mid(target, i, nbcar)) > 0 Then
                y_a_t_il = [COLOR="red"]cellule[/COLOR]
                Exit Function
            End If
        Next i
End Function

bonnes fetes de fin d'année
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 836
Messages
2 092 652
Membres
105 479
dernier inscrit
chaussadas.renaud