Dédoublonner fichier sous Excel.
Fermé
petitemarie
Messages postés
2541
Date d'inscription
dimanche 2 mai 2004
Statut
Membre
Dernière intervention
1 avril 2005
-
24 oct. 2004 à 21:55
dbankole - 28 avril 2016 à 17:21
dbankole - 28 avril 2016 à 17:21
A voir également:
- Dédoublonner fichier excel
- Fichier rar - Guide
- Liste déroulante excel - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Dedoublonner excel - Guide
7 réponses
bizu53
Messages postés
1274
Date d'inscription
samedi 30 août 2008
Statut
Membre
Dernière intervention
21 juin 2015
860
7 sept. 2009 à 18:54
7 sept. 2009 à 18:54
Je sais que je déterre le sujet de 2 ans mais c'est pour apporter une méthode bien plus simple :), sans macro.
Attention par contre s'il y a un filtre automatique sur les données à dédoublonner parce que lorsqu'on sélectionne une zone filtrée par un filtre automatique, ça sélectionne des données non affichées qui se trouvent entre celles qui sont affichées.
Il suffit de :
1) Sélectionner les données à dédoublonner, et les trier. (cela va mettre côte à côte les cellules contenant les mêmes choses)
2) Insérer une colonne juste à côté pour y coller à chaque ligne le test : "est-ce que la cellule du dessous contient la même chose que la cellule de cette ligne ?"
3) Copier toute cette dernière colonne, et la recoller par dessus par valeur en collage spécial (pour que ça ne change plus par la suite)
4) Sélectionner les données à dédoublonner avec la colonne de 0(=unique) et 1(=au moins en double), et les trier selon la 2ème colonne (toutes les données qui sont déjà présentent vont se retrouver en bas de liste, il ne suffira plus qu'à les supprimer).
5) Supprimer la colonne qui a servi aux tests.
Concrètement :
Si les données vont de A1 à A10
Par exemple, utilisons la colonne B pour les petites formules
B1 contiendra =SI(A1=A2;1;0)
Copier coller B1 jusqu'à B10
etc.
Remarque : Si on ne veut pas perdre l'ordre original des données, il suffit d'insérer une colonne, avant le tout premier tri, pour y mettre un compteur de lignes (1, 2, 3, 4 etc.) en face de chaque donnée (à copier coller par valeur si c'est fait avec une formule). Après le point 5) il suffira de retrier selon cette colonne pour retrouver l'ordre d'origine.
Autre remarque : la comparaison est insensible à la casse donc BONJour et bonjOuR vont être identique par contre évidemment ce n'est pas insensible aux accents (Michael vs Michaël seront différents).
Attention par contre s'il y a un filtre automatique sur les données à dédoublonner parce que lorsqu'on sélectionne une zone filtrée par un filtre automatique, ça sélectionne des données non affichées qui se trouvent entre celles qui sont affichées.
Il suffit de :
1) Sélectionner les données à dédoublonner, et les trier. (cela va mettre côte à côte les cellules contenant les mêmes choses)
2) Insérer une colonne juste à côté pour y coller à chaque ligne le test : "est-ce que la cellule du dessous contient la même chose que la cellule de cette ligne ?"
3) Copier toute cette dernière colonne, et la recoller par dessus par valeur en collage spécial (pour que ça ne change plus par la suite)
4) Sélectionner les données à dédoublonner avec la colonne de 0(=unique) et 1(=au moins en double), et les trier selon la 2ème colonne (toutes les données qui sont déjà présentent vont se retrouver en bas de liste, il ne suffira plus qu'à les supprimer).
5) Supprimer la colonne qui a servi aux tests.
Concrètement :
Si les données vont de A1 à A10
Par exemple, utilisons la colonne B pour les petites formules
B1 contiendra =SI(A1=A2;1;0)
Copier coller B1 jusqu'à B10
etc.
Remarque : Si on ne veut pas perdre l'ordre original des données, il suffit d'insérer une colonne, avant le tout premier tri, pour y mettre un compteur de lignes (1, 2, 3, 4 etc.) en face de chaque donnée (à copier coller par valeur si c'est fait avec une formule). Après le point 5) il suffira de retrier selon cette colonne pour retrouver l'ordre d'origine.
Autre remarque : la comparaison est insensible à la casse donc BONJour et bonjOuR vont être identique par contre évidemment ce n'est pas insensible aux accents (Michael vs Michaël seront différents).
Je suis étonnée que personne n'ai donné la solution du filtre directement sur Excel :
1) Sélectionner les lignes à dédoublonner
2) Menu "Données"
3) puis "filtrer"
4) "Filtre élaboré"
5) Remplir la zone de critère (exemple, la colonne mail ou matricule)
6) cocher "Extraction sans doublon"
Le seul hic, c'est qu'il s'agit d'un affichage. Je cherche encore comment garder que ces lignes filtrées et rien d'autre à la sauvegarde.
1) Sélectionner les lignes à dédoublonner
2) Menu "Données"
3) puis "filtrer"
4) "Filtre élaboré"
5) Remplir la zone de critère (exemple, la colonne mail ou matricule)
6) cocher "Extraction sans doublon"
Le seul hic, c'est qu'il s'agit d'un affichage. Je cherche encore comment garder que ces lignes filtrées et rien d'autre à la sauvegarde.
bizu53
Messages postés
1274
Date d'inscription
samedi 30 août 2008
Statut
Membre
Dernière intervention
21 juin 2015
860
16 déc. 2009 à 11:44
16 déc. 2009 à 11:44
Justement ma méthode n'est pas un simple affichage.
sandracannes
Messages postés
1
Date d'inscription
jeudi 25 juin 2015
Statut
Membre
Dernière intervention
25 juin 2015
25 juin 2015 à 12:05
25 juin 2015 à 12:05
Bonjour
Un copier/coller de la colonne sur une autre feuille excel fait l'affaire. Puis enregistrer.
Un copier/coller de la colonne sur une autre feuille excel fait l'affaire. Puis enregistrer.
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
25 juin 2015 à 19:07
25 juin 2015 à 19:07
Bonjour,
Je pense, que presque 6 ans plus tard, le réveil d'une question qui a plus de 10 ans d'age, ta réponse va faire avancer le Schmilblick !
Je pense, que presque 6 ans plus tard, le réveil d'une question qui a plus de 10 ans d'age, ta réponse va faire avancer le Schmilblick !
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
24 oct. 2004 à 22:04
24 oct. 2004 à 22:04
il faut écrire une petite procédure Visual Basic.
je ne vois pas d'autre solution, si tu ne sais pas je peux te l'envoyer car c'est assez simple.
toujours zen
je ne vois pas d'autre solution, si tu ne sais pas je peux te l'envoyer car c'est assez simple.
toujours zen
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
>
Jérém
9 janv. 2007 à 17:48
9 janv. 2007 à 17:48
bonjour
Pour adapter la macro à ton fichier, j'aimerais avoir :
- la colonne du nom
- la colonne du prénom
- la position de la première ligne de données.
- s'il faut supprimer tous les doublons "nom/prénom" en éliminant la ligne
- si d'autres conditions sont nécessaires.
Merci d'avance.
Pour adapter la macro à ton fichier, j'aimerais avoir :
- la colonne du nom
- la colonne du prénom
- la position de la première ligne de données.
- s'il faut supprimer tous les doublons "nom/prénom" en éliminant la ligne
- si d'autres conditions sont nécessaires.
Merci d'avance.
petitemarie
Messages postés
2541
Date d'inscription
dimanche 2 mai 2004
Statut
Membre
Dernière intervention
1 avril 2005
3
24 oct. 2004 à 22:21
24 oct. 2004 à 22:21
Merci beaucoup pour ta réponse.
Tu peux me l'envoyer sur mon mail ( cf profil).
Bonne soirée.
@plus,
///Marie
Tu peux me l'envoyer sur mon mail ( cf profil).
Bonne soirée.
@plus,
///Marie
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Furtif
Messages postés
9887
Date d'inscription
lundi 25 avril 2005
Statut
Contributeur
Dernière intervention
8 mars 2010
928
9 janv. 2007 à 19:21
9 janv. 2007 à 19:21
Bonsoir
Ou alors :
La procédure est décrite dans le Helper de EXCEL.
Faire F1 et écrire : "élimner les doublons"
Ou alors :
La procédure est décrite dans le Helper de EXCEL.
Faire F1 et écrire : "élimner les doublons"
Bonjour,
j'ai aussi un fichier d'adhérents à dédoublonner,
si vous pouviez m'envoyer cette petite procédure Visual Basic assez simple que je ne sais pas faire
si c'est possible merci d'avance
j'ai aussi un fichier d'adhérents à dédoublonner,
si vous pouviez m'envoyer cette petite procédure Visual Basic assez simple que je ne sais pas faire
si c'est possible merci d'avance
Bonjour bizu53,
Tes explications sont claires, pourtant je ne pige pas le n°4 et 5.
Est-ce que vous pourriez être plus précis sur ces points (surtt le 4)
merci infiniment
Tes explications sont claires, pourtant je ne pige pas le n°4 et 5.
Est-ce que vous pourriez être plus précis sur ces points (surtt le 4)
merci infiniment
bizu53
Messages postés
1274
Date d'inscription
samedi 30 août 2008
Statut
Membre
Dernière intervention
21 juin 2015
860
17 févr. 2010 à 15:15
17 févr. 2010 à 15:15
4) Sélectionner les données à dédoublonner avec la colonne de 0(=unique) et 1(=au moins en double), et les trier selon la 2ème colonne (toutes les données qui sont déjà présentent vont se retrouver en bas de liste, il ne suffira plus qu'à les supprimer).
C'est vrai qu'en relisant aujourd'hui ma phrase, je me rends compte qu'elle est cassée par des parenthèses sans arrêt.
4 reformulé en 2 sous-parties :
4a) Sélectionner la colonne des données à dédoublonner avec la colonne contenant les 0/1.
4b) Trier la sélection par rapport à la colonne contenant les 0/1.
La remarque que j'avais voulu faire était que les lignes qui ont un "1" correspondent aux lignes à supprimer. Quand la même valeur à dédoublonner apparaît plusieurs fois, une seule ligne contient un "0" dans la colonne de test, et toutes les autres (ou "l'autre" si ce n'est qu'un double) ont des "1".
Ainsi, les trier par rapport à la colonne 0/1 permet de regrouper toutes les valeurs uniques en haut (car "0" dans la colonne test). Et toutes les lignes des valeurs multiples se retrouvent en bas (car "1" dans la colonne test).
5) La colonne test peut être supprimée puisqu'elle ne servait qu'à dédoublonner ;-)
Je pense être plus clair maintenant mais s'il y a encore des choses que je peux éclaircir ne pas hésiter à me demander.
PS: Je viens de penser à une remarque que je n'avais pas faite : Si les données à dédoublonner se trouvent sur plusieurs colonnes. Ma méthode nécessite une petite adaptation pas compliquée au niveau des étapes 1 et 2.
Par exemple :
colonne prénom, colonne nom
pierre, martin
michel, martin
michel, dupond
michel, martin
1) Trier les 2 colonnes par rapport à elles deux
michel, martin
michel, martin
michel, dupond
pierre, martin
=> les lignes michel, martin se retrouvent ainsi à la suite comme voulu.
2) La condition devient alors "est-ce que la cellule du dessous contient la même chose que la cellule de cette ligne pour chacune des colonnes ?"
En C1, au lieu de quelque chose comme : =SI(A1=A2;1;0)
Cela serait quelque chose comme : =SI(ET(A1=A2;B1=B2);1;0)
Ainsi, si les deux prénoms sont identiques mais pas les noms, ou inversement, les deux lignes seront bien distinguées.
(Les 3 4 5 ne changent pas)
C'est vrai qu'en relisant aujourd'hui ma phrase, je me rends compte qu'elle est cassée par des parenthèses sans arrêt.
4 reformulé en 2 sous-parties :
4a) Sélectionner la colonne des données à dédoublonner avec la colonne contenant les 0/1.
4b) Trier la sélection par rapport à la colonne contenant les 0/1.
La remarque que j'avais voulu faire était que les lignes qui ont un "1" correspondent aux lignes à supprimer. Quand la même valeur à dédoublonner apparaît plusieurs fois, une seule ligne contient un "0" dans la colonne de test, et toutes les autres (ou "l'autre" si ce n'est qu'un double) ont des "1".
Ainsi, les trier par rapport à la colonne 0/1 permet de regrouper toutes les valeurs uniques en haut (car "0" dans la colonne test). Et toutes les lignes des valeurs multiples se retrouvent en bas (car "1" dans la colonne test).
5) La colonne test peut être supprimée puisqu'elle ne servait qu'à dédoublonner ;-)
Je pense être plus clair maintenant mais s'il y a encore des choses que je peux éclaircir ne pas hésiter à me demander.
PS: Je viens de penser à une remarque que je n'avais pas faite : Si les données à dédoublonner se trouvent sur plusieurs colonnes. Ma méthode nécessite une petite adaptation pas compliquée au niveau des étapes 1 et 2.
Par exemple :
colonne prénom, colonne nom
pierre, martin
michel, martin
michel, dupond
michel, martin
1) Trier les 2 colonnes par rapport à elles deux
michel, martin
michel, martin
michel, dupond
pierre, martin
=> les lignes michel, martin se retrouvent ainsi à la suite comme voulu.
2) La condition devient alors "est-ce que la cellule du dessous contient la même chose que la cellule de cette ligne pour chacune des colonnes ?"
En C1, au lieu de quelque chose comme : =SI(A1=A2;1;0)
Cela serait quelque chose comme : =SI(ET(A1=A2;B1=B2);1;0)
Ainsi, si les deux prénoms sont identiques mais pas les noms, ou inversement, les deux lignes seront bien distinguées.
(Les 3 4 5 ne changent pas)
debo08
>
bizu53
Messages postés
1274
Date d'inscription
samedi 30 août 2008
Statut
Membre
Dernière intervention
21 juin 2015
23 févr. 2010 à 14:31
23 févr. 2010 à 14:31
Bonjour,
Dsl je ne comprends comment parvenir à dédoublonner mon fichier...
Sans mon cas j'ai plusieurs colonnes, "nom, prenom, adresse, tel, fax, etc.", et dans un autre fichier j'ai tous les numéro de fax qui correspondent aux lignes entières que je dois supprimer, j'ai donc copier la colonne du 2e fichier et l'ai collée à côté du premier tableau afin de faire un filtre pour éliminer les doublons. Mais je ne sais pac omment sélectionner les cellules ou qqchose comme ça...
Pourriez-vous m'aider svp?
Dsl je ne comprends comment parvenir à dédoublonner mon fichier...
Sans mon cas j'ai plusieurs colonnes, "nom, prenom, adresse, tel, fax, etc.", et dans un autre fichier j'ai tous les numéro de fax qui correspondent aux lignes entières que je dois supprimer, j'ai donc copier la colonne du 2e fichier et l'ai collée à côté du premier tableau afin de faire un filtre pour éliminer les doublons. Mais je ne sais pac omment sélectionner les cellules ou qqchose comme ça...
Pourriez-vous m'aider svp?
bizu53
Messages postés
1274
Date d'inscription
samedi 30 août 2008
Statut
Membre
Dernière intervention
21 juin 2015
860
>
debo08
26 févr. 2010 à 22:44
26 févr. 2010 à 22:44
Je ne suis pas sûr de bien comprendre, mais de ce que je crois comprendre, la même méthode n'est pas applicable mais peut être adaptée avec un RECHERCHEV je pense. La colonne "test" peut contenir 1 si c'est dans la liste des n° de fax, 0 sinon. Après il suffit comme dans la méthode que je donne, de trier par rapport à cette colonne de 0/1, puis supprimer toutes les lignes qui ont un 1.
21 nov. 2009 à 00:11
28 avril 2016 à 17:21