Excel : fusion en masse de lignes avec données similaires
Raymond PENTIER Messages postés 71833 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous,
Je dois, à partir d'un tableau Excel, réussir à fusionner des lignes dont certaines données sont similaires.
En clair, dans le fichier base, j'ai des lignes avec : nom, prénom, adresse, numéro de téléphone et email. Chaque ligne correspond à un individu. J'ai désormais besoin de générer une seule et même ligne afin de regrouper les membre d'un même foyer.
Je pense que l'adresse est la donnée la plus fiable pour effectuer cette fusion puisque le nom et le numéro de téléphone peuvent différer selon les personnes.
Malgré mes recherches, je ne trouve pas de moyen pour effectuer cette manipulation en masse sur Excel (j'ai plus de 2500 lignes à traiter!!).
Je me tourne donc vers vous pour solliciter votre précieuse aide !
Merci à tous et à très vite !
Windows / Chrome 126.0.0.0
- Excel : fusion en masse de lignes avec données similaires
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
- Excel trier par ordre croissant chiffre - Guide
10 réponses
Le demandeur souhaite fusionner des lignes d'un fichier Excel pour regrouper les membres d'un même foyer en une seule ligne, en utilisant l'adresse comme critère principal, sur environ 2500 lignes. Plusieurs participants demandent un fichier échantillon pour comprendre la structure et proposent d’ajouter une colonne dédiée afin de faciliter le regroupement et de trier par adresse. Une approche concrète évoquée consiste à construire une colonne auxiliaire qui indique par exemple « et Mme » ou « seul », puis à filtrer pour afficher uniquement les lignes consolidables. Cependant, il est noté que l’adresse seule peut ne pas suffire pour identifier un foyer, car plusieurs foyers peuvent partager une même adresse et le nombre de personnes par foyer varie. L’objectif final est de produire une ligne unique du type « Monsieur X et Madame X », ce qui implique de gérer les cas des couples et les personnes isolées sans introduire d’ambiguïté.
Bonjour
Il faut donc que dans ton fichier de départ tu puisse avoir une colonne M ou Mme
Sans un exemple de ton fichier et sa structure (une 50 de lignes avec des noms bidons suffira) difficile de t'aider
Fichier à poster sur cjoint.com, faire créer un lien, le copier et revenir le coller ici
Dans l'attente
Cdlmnt
Via
Bonjour,
L'adresse, par exemple dans un immeuble, n'est pas un critère suffisant pour déterminer si elle est commune à un même foyer.
Même si on le postule, on peut envisager si le nombre de champs est fixe et l'adresse toujours à la même place d'exporter en bouclant sur cette adresse puis en ajoutant les autres champs dans l'ordre requis.
Le problème est que même si je connais cet ordre à suivre (par exemple nom, prénom, téléphone et mail en champs à répéter), je ne connais pas par avance le nombre de personnes concernées, et donc le nombre de colonnes à réserver à cet effet?
Bonjour Daniel,
Effectivement, je n'ai pas précisé cette question : je souhaite obtenir comme résultat une ligne "Monsieur X et Mme X".
Merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionBonjour.
- Est-ce que Mr et Mme ont toujours le même nom de famille X ?
- Est-ce que Mme X est toujours dans la ligne qui suit celle de Mr X ?
Comme demandé par via55, envoie-nous un fichier exemple.
Bonjour Raymond,
Non, M. et Mme n'ont pas toujours le même nom de famille mais le cas reste exceptionnel.
Dans mon ficher, Mme ne suit pas toujours la ligne de M. mais un tri peut être fait en amont.
ci joint le lien du fichier fictif qui ressemble à ma base de données :
https://www.cjoint.com/c/NGoiGTG1E1V
Dans ce fichier, il y a bien des M. et Mme, des M. (seuls) des Mme (seules) et des personnes ayant le même nom, mais pas la même adresse.
Merci bcp !
Bonjour ennaifoos.
Attention : tu as le même intitulé de colonne en A1 et B1 : c'est interdit !
Ne sachant toujours pas quelle est ta version d'Excel, voici une solution qui fonctionne avec les anciennes versions :
- Lancer un tri sur la colonne J.
- Insérer 3 colonnes après la colonne E.
- Saisir "et Mme " en F1, "Nom Mme" en G1, "Prénom Mme" en H1.
- En N1 saisir "Adresse_complète".
- En N2 saisir la formule =I2&" "&L2&" "&M2 et la recopier jusqu'en N44.
- En F2 saisir la formule =SI(G2="";"";"et Mme ").
- En G2 saisir la formule =SI($N3=$N2;D3;"").
- En H2 saisir la formule =SI($N3=$N2;E3;"").
- Recopier F2:H2 jusqu'en ligne 44.
Avec Excel 365, en ligne 2, à recopier vers le bas :
=LET(tbl;FILTRE($C$2:$D$44;($I$2:$I$44=I2)*($F$2:$F$44=F2));SI(NBVAL(tbl)=2;C2&" "&D2;SI(D2=INDEX(tbl;2;2);C2&" et "&INDEX(tbl;2;1)&" "&D2;C2&" "&D2&" et "&INDEX(tbl;2;1)&" "&INDEX(tbl;2;2))))
Daniel
Bonjour,
Un exemple avec Power Query
Un clic droit dans la requête, "Actualiser", pour mettre à jour.
Regroupement effectué sur Nom et Adresse communs. On peut rajouter le barcode (si utilité), et le fusionner également.
Si ça correspond.
Bon dimanche
https://www.cjoint.com/c/NGokZ2PLiKW
Solution Excel 365 en une seule formule :
=UNIQUE(ASSEMB.H(MAP($C$2:$C$44;$D$2:$D$44;$F$2:$F$44;$I$2:$I$44;LAMBDA(x;y;adr;cp;LET(tbl;FILTRE($C$2:$D$44;($I$2:$I$44=cp)*($F$2:$F$44=adr));SI(NBVAL(tbl)=2;x&" "&y;SI(x=INDEX(tbl;2;2);INDEX(tbl;1;1)&" et "&INDEX(tbl;2;1)&" "&y;INDEX(tbl;1;1)&" "&INDEX(tbl;1;2)&" et "&INDEX(tbl;2;1)&" "&INDEX(tbl;2;2))))));$F$2:$F$44;I2:J44))
https://www.cjoint.com/c/NGony5yRMwD
Bonjour à tous.
Pour compléter mon post #13, je propose :
- En F2 remplacer la formule par celle-ci =SI(H2<>"";"et Mme ";SI(H1="";"seul";"_"))
- Recopier jusqu'en F44
- Avec le bouton "Tri-Filtre" en F1, lancer un filtre en décochant "_"
- On peut utilement masquer les 2 colonnes J:K ... et même les 5 colonnes I:M !
- https://www.cjoint.com/c/NGroiSGfAuU
Bonjour via55 !
Merci pour ta réponse.
Voici un exemple de fichier qui ressemble à celui que j'utilise :
https://www.cjoint.com/c/NGoiGTG1E1V
Dans ce fichier, il y a bien des M. et Mme, des M. (seuls) des Mme (seules) et des personnes ayant le même nom, mais pas la même adresse.