Fusion, doublon et extraction.

Fermé
myn0thor Messages postés 67 Date d'inscription vendredi 9 juillet 2010 Statut Membre Dernière intervention 4 août 2016 - 24 juin 2014 à 09:03
A_random_peon Messages postés 6 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 1 juillet 2014 - 1 juil. 2014 à 09:34
Bonjour,

J'ai 4 feuilles de classeur avec des listes d'adresses mails que je souhaiterais fusionner dans un onglet maitre en supprimant tous les doublons.
Puis je souhaiterais soustraire (ou extraire) de mon fichier maitre une 5 feuilles ou j'ai des adresses mails d'utilisateurs bannis.

Merci d'avance.

A voir également:

10 réponses

PHILOU10120 Messages postés 6389 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 19 septembre 2024 809
24 juin 2014 à 09:42
Bonjour

Copier vos différentes liste sur une même feuille et mettre cette formule

=SI(ESTERREUR(RECHERCHEV(A1;$F$1:$F$50;1;0));SI(NB.SI(A1:$A$100;A1);NB.SI(A1:$A$100;A1));2)

En supposant que les adresses sont en colonne A1:A100
la liste des adresses à bannir en colonne F1:F50

Puis filtrer sur la colonne ou vous avez mis cette formule
toutes les lignes supérieur à 1 sont à supprimer
0
A_random_peon Messages postés 6 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 1 juillet 2014
24 juin 2014 à 10:35
Bonjour,

Essaie de mettre ce code dans un module VBA, puis utilise la fonction liste_mail(), avec comme 4 premiers arguments les plages comprenant les mails et comme dernier argument la plage des bannis

Function Liste_mail(Plage1 As Range, Plage2 As Range, Plage3 As Range, Plage4 As Range, Plage_bannis As Range) As String
Dim Mail_col As Collection
Dim c As Variant
Dim output As Variant

Set Mail_col = New Collection

On Error Resume Next

For Each c In Plage1
Mail_col.Add c, CStr(c)
Next c

For Each c In Plage2
Mail_col.Add c, CStr(c)
Next c

For Each c In Plage3
Mail_col.Add c, CStr(c)
Next c

For Each c In Plage4
Mail_col.Add c, CStr(c)
Next c

For Each c In Plage4
Mail_col.Add c, CStr(c)
Next c

For Each c In Plage_bannis
Mail_col.Remove CStr(c)
Next c
On Error GoTo 0

For Each c In Mail_col
output = output & CStr(c) & ";"
Next c

Liste_mail = output

End Function
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 306
24 juin 2014 à 10:46
Bonjour

Tout simplement si la version Excel >=2007

copier les adresses des 4 feuilles dans l'onglet maître
Sélectionner le tout
données- outils de données-supprimer les doublons

0
myn0thor Messages postés 67 Date d'inscription vendredi 9 juillet 2010 Statut Membre Dernière intervention 4 août 2016 1
24 juin 2014 à 11:47
Merci pour vos réponses,
Le copier coller n'est pas une option car en fait les 4 premières feuilles sont des extractions de ma bdd qui se réactualises à chaque ouverture...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 306
Modifié par michel_m le 24/06/2014 à 11:52
en fait les 4 premières feuilles sont des extractions de ma bdd qui se réactualises à chaque ouverture...
Pourquoi ne l'avoir pas dit ? Pour nous faire bosser pour rien ?

pendant qu'on y est:
j'ai des adresses mails d'utilisateurs bannis.
comment sait on qu'ils sont bannis ?
Michel
0
myn0thor Messages postés 67 Date d'inscription vendredi 9 juillet 2010 Statut Membre Dernière intervention 4 août 2016 1
24 juin 2014 à 13:51
en fait les 4 premières feuilles sont des extractions de ma bdd qui se réactualises à chaque ouverture...
Pourquoi ne l'avoir pas dit ? Pour nous faire bosser pour rien ?


J'ai oublié de le préciser dsl...

En fait j'ai 3 feuilles de requetes sur ma bdd, une feuille de saisie manuel avec des adresses suplémentaire, et une feuille avec une liste d'adresse de bannis en saisie manuel également.
0
myn0thor Messages postés 67 Date d'inscription vendredi 9 juillet 2010 Statut Membre Dernière intervention 4 août 2016 1
30 juin 2014 à 09:27
Du coup personne pour m'aider? :-(
0
A_random_peon Messages postés 6 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 1 juillet 2014
30 juin 2014 à 14:51
As tu essayé la solution macro?
0
myn0thor Messages postés 67 Date d'inscription vendredi 9 juillet 2010 Statut Membre Dernière intervention 4 août 2016 1
1 juil. 2014 à 05:23
N'ayant jamais utilisé les macros j'ai essayé de bidouiller qqch mais sans succès :-(
0
A_random_peon Messages postés 6 Date d'inscription mardi 24 juin 2014 Statut Membre Dernière intervention 1 juillet 2014
1 juil. 2014 à 09:34
Normalement la solution que je t'ai donné précédemment devrait te permettre de ressortir les adresses mail dans une cellule, en reprenant les 4 plages de sélection en premiers arguments et la plage d'exclusion en dernier argument.

Insérère la fonction dans un module et utilise la fonction liste_mail dans une cellule
0