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

XL 2013 Suppression de doublons mails

Flown720

XLDnaute Nouveau
Bonjour,

Je m'adresse à vous pour avoir un peu d'aide sur une problématique que je rencontre.
J'ai un fichier excel avec une base de données possédant les coordonnées de client.

J'ai une macro qui prends les mail dans la colonne mail et qui les expédient sans soucis.
Tous les mails sont renseignés de la façon suivante : abc@aaa.fr;cde@bbb.fr;ffhshdf@ggds.fr

Sauf que dans le fichier de base, il se trouve que les personnes avait dupliqué certains mails dans cette colonne....

J'aimerai supprimé les doublons qu'il pourrait y avoir...
J'ai mis un fichier de principe pour vous faciliter la compréhension en sachant bien sûr, que j'ai pas que 3 lignes à traité mais plutôt dans les 3000....

Merci de votre aide
 

Pièces jointes

  • doublon-mail.xlsx
    10 KB · Affichages: 5
Solution
Avec une petite fonction personalisée en VBA... C'est facile !
VB:
Function SansDoublons(pMailAddr As String)
    Dim oDico As Object
    Dim vAdr As Variant
    Dim vKey As Variant
    
    Set oDico = CreateObject("Scripting.Dictionary")
    For Each vAdr In Split(pMailAddr, ";")
        oDico(vAdr) = ""        'On stocke la clé et sa valeur ("") dans le dico.
    Next vAdr
    SansDoublons = ""          'Init. résultat
    For Each vKey In oDico.keys 'On parcourt les clefs du dictionnaire
        If SansDoublons <> "" Then SansDoublons = SansDoublons & ";" 'Séparateur
        SansDoublons = SansDoublons & vKey 'Ajout clé au résultat
    Next vKey
End Function
Cordialement,
--
LR

laurent3372

XLDnaute Impliqué
Supporter XLD
Avec une petite fonction personalisée en VBA... C'est facile !
VB:
Function SansDoublons(pMailAddr As String)
    Dim oDico As Object
    Dim vAdr As Variant
    Dim vKey As Variant
    
    Set oDico = CreateObject("Scripting.Dictionary")
    For Each vAdr In Split(pMailAddr, ";")
        oDico(vAdr) = ""        'On stocke la clé et sa valeur ("") dans le dico.
    Next vAdr
    SansDoublons = ""          'Init. résultat
    For Each vKey In oDico.keys 'On parcourt les clefs du dictionnaire
        If SansDoublons <> "" Then SansDoublons = SansDoublons & ";" 'Séparateur
        SansDoublons = SansDoublons & vKey 'Ajout clé au résultat
    Next vKey
End Function
Cordialement,
--
LR
 

Pièces jointes

  • doublon-mail (1).xlsm
    16.5 KB · Affichages: 3

Flown720

XLDnaute Nouveau
Waowww
trop bien, honnêtement !!! trop rapide la réponse et excellente.
ça dépasse largement mes compétences, parce que je comprends rien au code, mais il fonctionne et c'est principal !!! merci beaucoup
 

Flown720

XLDnaute Nouveau
Bonjour, je viens de m'aperçevoir d'un petit soucis.
Dans le formule, il ne considère pas comme un doublon : xxx@GMAIL.COM et xxx@gmail.com
alors que pour moi c'est bien un doublon, je sais pas si c'est possible de modifier ça ???

ou alors il faudrait peut-etre que je change la casse du texte par un autre code, mais je ne connais pas non plus !!
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
543
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…