Fusionner des lignes en doublons

Bonjour,

Je dois traiter une base de données extraite de notre logiciel concernant les entretiens professionnels, dans le cadre d’un bilan.

L’extraction nous donne une liste des personnes ayant eu un entretien, avec un matricule, un nom, u prénom pour identifier la personne.

Un entretien correspond à une ligne, de ce fait, un même matricule peut avoir plusieurs lignes car plusieurs entretiens ont été réalisés pour cette même personne.

Je cherche à automatiser le traitement de la base de données afin que l’on puisse avoir une seule ligne par matricule, avec l’ensemble des entretiens à la suite.

Ainsi, dans l’idéal, la colonne E contiendrait la date du premier entretien, la colonne F le deuxième entretien, etc. Sachant qu’il peut y avoir plus de 5 entretiens en tout pour un seul matricule.

Je n’arrive pas à trouver une solution afin de me simplifier la mise en forme de la base de données, sachant que je dois traiter un grande nombre de matricules et donc de lignes.

Je vous remercie de votre aide.

Bonjour Benjamin et

avoir une seule ligne par matricule, avec l’ensemble des entretiens à la suite.

Le titre m'a interpellé et j'allais dire surtout ne fusionne pas de cellules !

  • Une première solution consiste à utiliser PowerQuery (mais je ne suis pas spécialiste)
  • Une deuxième solution qui réserve la structure est d'utiliser une MFC pour n'afficher que le premier matricule d'une série ... cela te permet aussi de faire ensuite des statistiques via un TCD.
  • Enfin pour mettre à plat comme tu le souhaites, il faudrait une macro à défaut de PowerQuery

Voici pour la seconde solution

Bonjour,

En complément du post de Steelson (hello !)

Ci-joint une proposition en VBA, à tester.

Bouben

Merci beaucoup Steelson et Bouben !

En effet, la macro correspond exactement au résultat que je dois avoir

J'ai juste un soucis au niveau de la mise en forme des cellules, si j'ajoute de nouveaux matricules, ceux-ci n'ont pas la même police et j'ai des chiffres qui disparaissent (matricule commençant par 0000).

Je ne suis malheureusement pas assez à l'aise en macro pour savoir si ça vient de là et si oui quoi modifier

bonjour

une contribution sans VBA sur le fichier de Bouben

prete à l'usage

33benjamin29.xlsm (34.78 Ko)

cordialement

Merci beaucoup également Tulipe !

Je vais regarder ta solution avec attention également, qui me parait plus abordable que les macros pour les débutants.

J'ai une suite à mon problème, pour cela je vais repartir du résultat de Bouben.

J'ai un autre fichier regroupant à la fois les salariés (et donc les matricules) des personnes ayant eu des entretiens mais également ceux qui n'en ont pas eu. Ma précédent extraction ne me permettant pas de tenir compte de ceux n'ayant pas eu d'entretien je dois donc rapprocher les deux résultats.

J'ai donc des données (que vous pouvez retrouver sur le troisième onglet du fichier ci-joint), que je colle pour traitement (colonne A à D dans ce cas de figure)

J'ai moi-même essayé un traitement afin d'avoir des lignes m'indiquant qui a eu des entretiens et quand grâce au résultat obtenu précédemment.

Cependant dans mon résultat, j'obtiens des cellules avec des alertes et des valeurs nulles, que je n'arrive pas à harmoniser.

Dans l'idéal, il me faudrait une formuler me permettant d'afficher la date de l'entretien si elle est existante, et dans le cas contraire de ne rien afficher du tout.

Quelqu'un peut il me renseigner sur ce sujet?

Merci encore de votre aide très précieuse

re

ce serait faisable ;mais tu dois impérativement renseigner le fichier source (feuille1)

le critère de tri serait (si ( la colonne d'entretien est vide (je resume) )

pour planquer les #NA

=sierreur( la formule);"")

cordialement

Bonjour,

Pour le fun, une solution Power Query.

Nécessite de télécharger et d'installer le complément gratuit Microsoft pour Excel 2010, 2013.

Cdlt.

47pq-benjamin29.xlsm (35.76 Ko)

Merci pour votre aide, j'ai réussi à obtenir exactement le résultat escompté !

Rechercher des sujets similaires à "fusionner lignes doublons"