Faire des groupes en fonction d'affinité

Bonjour,

Je tente de réaliser des groupes de personnes en fonction des affinités.

J'ai donc un fichier Excel ou j'ai une première colonne avec le nom et le prénom d'une personne, dans une 2ème colonne une personne avec qui elle voudrait être (selon affinité) et enfin une 3ème colonne avec la encore une 2ème affinité.

En clair Ça donne :

A..................................B..................................C

Mr Dupont .............Mme Michou .......... Mr Benji ....

Mme Michou......... Mr Benji

Mr Jean ................... Mme Michou ........ Mr Henry

Mr Henry ................ Mr Benji

On a donc Mr dupont qui veut etre avec mme michou et avec Mr benji

Mme Michou veut être avec Mr Benji ( et donc elle sera aussi avec Mr Dupont )

... Etc

Le problème c'est que j'ai environ 1000 personnes dans la colonne A : En clair, le faire manuellement va me prendre des plombes de recherche ou de filtre !....

Est-ce qu'il y aurait une méthode pour simplifier un petit peu ce travail même si je sais qu'il y aura du boulot !!

Merci d'avance.

Bonjour,

à-priori ça ne devrait pas poser de problème en vba.

Le seul soucis c'est que tu risques d'avoir Mr1 qui veut être avec Mr2 qui veut être avec Mr3 .... etc ... qui veut être avec Mr1000.

Ce qui te fera 1 groupe de 1000.

Il va doit falloir faire appel à ton imagination pour limiter la taille des groupes et inventer des règles, des priorités.

Fait ton brain-storming et reviens avec des règles qui te paraissent adéquates et surtout cohérentes (entre elles au minimum)

Et si tu peux mettre un fichier de travail avec un peu plus de lignes représentatives du style de liste réelle.

eric

Merci Eric de ta réponse !

Effectivement en relisant mon post je me rends compte que mon exemple n'est pas bon !

J'aurais en effet plutôt des groupes limités comme dans le fichier joint

Je joins donc un fichier excel avec quelque nom ... et en dessous les listes en fonction des affinités.

Pensez-vous qu'un tableau croisé dynamique puisse m'aider ?

UP ?

Oui, ça vient...

J'ai été occupé toute la journée et y'a quand même plus de boulot que prévu, avec un débogage pas simple.

Peut-être ce soir

Donc voilà.

Le nombre d'affinité peut augmenter, la plage des noms doit être suivie d'une ligne et d'une colonne vides.

J'ai l'impression qu'il y a un cas non présent : une ligne qui créerait une fusion entre 2 groupes existants.

Essaie de tester tous les cas tant que c'est frais pour remonter les bugs au plus tôt stp.

eric

Je ne sais pas comment te remercier !!!

Vraiment sympathique pour l'aide 8)

Je test quelque cas et te redit très rapidement ... Par contre je n'ai pas compris le problème avec la ligne qui créerait une fusion entre 2 groupes existants ??

Ex :

nom pref1 pref2

nom1 nom2 nom3

nom4 nom5 nom6

nom7 nom5 nom3

doit donner un seul groupe

À partir d'un trop grand nombre de données j'ai une erreur d’exécution 1004 : Quand je clic sur débogage il colorie la ligne suivant en jaune :

.[A1].Resize(nblig, nbGr) = result

Ça ne vient visiblement pas d'une quantité précise, car en changeant de liste ça ne bloque pas à partir d'un ligne précise.

Beau boulot pour le code en tout cas : je n’y comprends que dal'

Ok j'ai compris d'ou venait le problème : s'il y a plus de 256 groupes la feuille Groupe est en fin de page et s'arrête à la colonne IV.

c'est ou dans le code qu'on change ça ??

EDIT : j'étais en mode comptabilité word 97-2003 ce qui limite à 256 le nombre de colonnes

Tu as ecrit dans ton profil excel 2016.

Pourquoi avoir utilisé un .xls alors ?

Enregistre en .xlsm pour avoir 16000 colonnes.

eric

Oui en effet le fichier avait été créé depuis un autre ordinateur ...

Rechercher des sujets similaires à "groupes fonction affinite"