Empêcher les doublons sur une même colonne de différentes feuilles

Bonjour à tous,

Je dispose d'un fichier (ci-joint) qui répertorie une liste de contact (fichier vidé au préalable). Ce fichier comprend plusieurs onglets (au nom d'une personne), tous organisés de la même manière, avec les mêmes colonnes. L'idée est que chaque personne puisse ajouter des contacts sur son propre onglet (il est important que chacune des personnes ait son propre onglet).

Je cherche un code qui permettrait, automatiquement à chaque ajout de contact dans un des onglets, d'aller chercher si ce contact est déjà présent dans les onglets des autres personnes, et d'empêcher la saisie si c'est le cas (si possible en indiquant que ce contact est déjà pris en charge par la personne indiquée dans l'onglet).

J'ai pensé à une boucle qui balayerait l'ensemble des onglets à chaque nouvel ajout de mail dans une colonne H, en vérifiant à chaque fois la colonne H de chaque onglet (colonne des adresses mail, qui garantit l'unicité du contact, étant donné que plusieurs contacts peuvent avoir le même nom et le même prénom, mais leur adresse sera différente). Cependant je n'arrive pas à formaliser cela en VBA.

Merci beaucoup pour votre aide,

Phil

Bonjour Phil le forum

bon alors à la finale tu veux quoi? que l'ajout soit impossible si l'adresse mail existe déjà dans une autre feuille c'est cela?

et aussi pour faire cela il faudrait protéger les feuilles au minimum la colonne Email de chaque personne ??

à te relire

a+

Papou

Re Phil3392 le forum

bon pas de réponse alors ton fichier avec ce que je pense à toi de tester

a+

Papou

11phil3392-v1.xlsm (76.75 Ko)

Bonjour Paritec !

Merci beaucoup pour ta réponse et ton aide, c'est super !

Pour te donner des précisions : oui, j'aimerais que que l'ajout soit impossible si l'adresse mail existe déjà, dans cette feuille ou dans une autre feuille, et ce pour chacune des feuilles avec un prénom.

Exemple : Je rentre une adresse mail dans la feuille Antoine, si c'est cette adresse est déjà présente dans une des autres feuilles (donc en colonne H), l'ajout est impossible et le message d'erreur apparaît comme tu l'as codé.

J'avais oublié de préciser que la feuille 1 "Schémas adresses mail" n'est pas à inclure dans la boucle.

J'ai pu tester, ta réponse correspond tout à fait à ce que j'espérais Le seul petit point, c'est lorsque l'on rentre une adresse mail dans une feuille et que cette adresse existe déjà dans cette même feuille, Excel ne bloque pas la saisie. Mis à part, tout correspond très bien, c'est super !

Exemple: Je rentre une adresse dans la feuille Antoine, si cette adresse est déjà présente dans la feuille Antoine, j'aimerais que la saisie soit également bloquée.

Encore merci Paritec,

Phil

Re phil3392 le forum

bon bah je modifie et je te renvoie la version modifiée, mais c'est moi qui volontairement ai exclu le contrôle sur la feuille active !!!

a+

Papou

Re Phil3392 le forum

voilà la version avec contrôle de toutes les feuilles, un peu plus compliqué mais voilà.

A toi de tester et tu me redis

a+

14php-28-v2.xlsm (29.49 Ko)

Papou

Salut Phil,
Salut Paritec,

j'imagine qu'il faut effacer toute la ligne du contact... ?

Private Sub Workbook_SheetChange(ByVal sh As Object, ByVal Target As Range)
'
Application.EnableEvents = False
'
If Not Intersect(sh.Columns(8), Target) Is Nothing And Target.Count = 1 And Target <> "" Then
    For x = 2 To Sheets.Count
        If WorksheetFunction.CountIf(Sheets(x).Columns(8), Target) = IIf(x = ActiveSheet.Index, 2, 1) Then _
            MsgBox "Contact déjà pris en charge par " & IIf(x = ActiveSheet.Index, "vous-même", Sheets(x).Name) & " !": _
            Rows(Target.Row).Delete shift:=xlUp: _
            Exit For
    Next
End If
'
Application.EnableEvents = True
'
End Sub


A+

Salut Curulis, salut Paritec,

Merci beaucoup à tous les deux, c'est vraiment top ! C'est vrai que je n'avais pas pensé à l'option de supprimer la ligne si doublon il y avait, c'est un bonus appréciable

C'est tout bon pour moi !

Encore merci pour votre aide et votre réactivité,

A+

Phil

Bonjour Phil3392 le forum

Si tu commences par écrire l'adresse email, il n'y a rien à supprimer et c'est bien plus simple

a+

Papou

Rechercher des sujets similaires à "empecher doublons meme colonne differentes feuilles"