Recherche d'éléments communs à 2 colonnes [Fermé]

Signaler
-
cs_Le Pivert
Messages postés
6566
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
22 février 2020
-
Bonjour,

Un grand merci d'avance pour votre aide...car je bloque!!
Ma problématique: j'ai un fichier avec 3 colonnes:
- 1 colonne adresse mail
- 1 colonne nom
- 1 colonne prénom
Le problème est que le fichier a été décalé et plus aucun mail ne correspond aux contacts (nom et prénom).
L'objectif est donc de les relier à nouveau.

Mon idée était déjà d'en récupérer le maximum en partant du principe que les mails s'écrivent souvent à partir de ces 4 hypothèses suivantes:
- prénomnom@....
- prénom.nom@....
- initiale prénomnom@...
- initiale prénom.nom@....

Je fais donc appel à votre éclairage pour me trouver une formule du type: "si prenomnom appartient au mail"....alors vrai; sinon faux. Idem "si prénom.nom appartient au mail"....etc selon les 4 hypothèses.

Pensez-vous que ce soit une bonne option pour récupérer le maximum de contacts à relier à cette longue liste de mails?

Merci

2 réponses

Messages postés
23
Date d'inscription
jeudi 17 novembre 2016
Statut
Membre
Dernière intervention
6 janvier 2018

Salut, Concernant les prénoms, ils sont très souvent communs à un grand nombre de personnes. La réorganisation de ton fichier avec cet algorithme ne me semble pas efficace.
Bonjour Romeric, merci pour ton retour.
Le prénom sera rattaché au nom donc ne correspondra qu'à une adresse mail a priori
ex: romericdupont@.... ou ***@*** ***@*** r.dupont@...
Messages postés
6566
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
22 février 2020
454
Bonjour,

Je rejoint Romeric pour son analyse.
Tu peux quand même essayer de mettre dans une nouvelle colonne le prénom et le nom avec un point au milieu.
Ensuite tu tries ta colonne mail et ta nouvelle colonne , cela te rapprocheras le plus possible sans être efficace à 100%
Dans l'exemple les prénoms sont dans la colonne A, noms colonne B et dans la colonne C le résultat.
a toi de l'adapter:

Option Explicit
Private Sub CommandButton1_Click()
Dim FL1 As Worksheet, NoCol As Integer
Dim NoLig As Long
Dim prenom As String, nom As String
    Set FL1 = Worksheets("Feuil1") 'adapter le nom de la feuille
    NoCol = 1 'lecture de la colonne A
     For NoLig = 1 To Range("A1048576").End(xlUp).Row 'demarre ligne 1 et colonne A
        FL1.Cells(NoLig, NoCol).Select
    prenom = FL1.Cells(NoLig, NoCol).Value 'colonne a
    nom = FL1.Cells(NoLig, NoCol + 1).Value 'colonne B
   FL1.Cells(NoLig, NoCol + 2).Value = prenom & "." & nom 'colonne C
        Next
    Set FL1 = Nothing
   End Sub