Création de Groupes suivant une base de données variable sous conditions

Davidstarr

XLDnaute Nouveau
Bonjour à tous,

Suivant une base de données variable je souhaite créer plusieurs groupes en automatique suivant le nombre de juges présent lors de l'épreuve.
J'ai joint un fichier avec plus d'information.
Je ne sais pas trop sur quelle base cela peut être réalisée formules ou vba.

Par avance merci pour votre aide
 

Pièces jointes

  • testgroupe.xlsx
    13.8 KB · Affichages: 136

hoerwind

XLDnaute Barbatruc
Re : Création de Groupes suivant une base de données variable sous conditions

Bonjour,

C'est faisable par formules et par macro, mais il faudrait préalablement préciser laquelle des deux solutions a ta préférence.
Ceci pour ne pas passer son temps à te proposer une solution qui ne sera ps retenue.
Ceux qui te répondront sont bien des bénévoles, mais n'aiment pas pour autant travailler pour rien !
 

Tibo

XLDnaute Barbatruc
Re : Création de Groupes suivant une base de données variable sous conditions

Bonjour Davidstarr, salut hoerwind,

Un peu d'accord avec hoerwind, il est toujours intéressant de savoir vers quoi tu souhaites qu'on s'oriente.

Pour ma part, étant formuliste, je te propose ceci :


En F21 : le nombre de juges


Pour la ligne des titres :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*$F$21>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0);"";INDEX($A$1:$D$1;MOD(COLONNES($A:A);5)))

Formule à recopier vers la droite

Pour les tableaux :

à coller juste en-dessous de la formule titre :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*$F$21>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0;LIGNES($1:1)>$F$21);"";INDEX(DECALER($A$1;ENT(COLONNES($A:A)/5)*$F$21+1;;$F$21;4);LIGNES($1:1);MOD(COLONNES($A:A);5)))

à recopier vers le bas et vers la droite (autant de fois que nécessaire)

Je te laisse tester

@+
 

Davidstarr

XLDnaute Nouveau
Re : Création de Groupes suivant une base de données variable sous conditions

Bonjour,

C'est faisable par formules et par macro, mais il faudrait préalablement préciser laquelle des deux solutions a ta préférence.
Ceci pour ne pas passer son temps à te proposer une solution qui ne sera ps retenue.
Ceux qui te répondront sont bien des bénévoles, mais n'aiment pas pour autant travailler pour rien !

Bonjour Hoerwind,

j'ai une préférence pour la macro

Merci
 

Davidstarr

XLDnaute Nouveau
Re : Création de Groupes suivant une base de données variable sous conditions

Bonjour Davidstarr, salut hoerwind,

Un peu d'accord avec hoerwind, il est toujours intéressant de savoir vers quoi tu souhaites qu'on s'oriente.

Pour ma part, étant formuliste, je te propose ceci :


En F21 : le nombre de juges


Pour la ligne des titres :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*$F$21>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0);"";INDEX($A$1:$D$1;MOD(COLONNES($A:A);5)))

Formule à recopier vers la droite

Pour les tableaux :

à coller juste en-dessous de la formule titre :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*$F$21>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0;LIGNES($1:1)>$F$21);"";INDEX(DECALER($A$1;ENT(COLONNES($A:A)/5)*$F$21+1;;$F$21;4);LIGNES($1:1);MOD(COLONNES($A:A);5)))

à recopier vers le bas et vers la droite (autant de fois que nécessaire)

Je te laisse tester

@+

Merci Tibo je vais tester
 

Davidstarr

XLDnaute Nouveau
Re : Création de Groupes suivant une base de données variable sous conditions

Bonjour Davidstarr, salut hoerwind,

Un peu d'accord avec hoerwind, il est toujours intéressant de savoir vers quoi tu souhaites qu'on s'oriente.

Pour ma part, étant formuliste, je te propose ceci :


En F21 : le nombre de juges


Pour la ligne des titres :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*$F$21>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0);"";INDEX($A$1:$D$1;MOD(COLONNES($A:A);5)))

Formule à recopier vers la droite

Pour les tableaux :

à coller juste en-dessous de la formule titre :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*$F$21>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0;LIGNES($1:1)>$F$21);"";INDEX(DECALER($A$1;ENT(COLONNES($A:A)/5)*$F$21+1;;$F$21;4);LIGNES($1:1);MOD(COLONNES($A:A);5)))

à recopier vers le bas et vers la droite (autant de fois que nécessaire)

Je te laisse tester

@+

Tibo je viens de tester tes formules, ton approche est intéressante, ta variable en F21 est le nombre de concurrents et no le nombre de juges. Mon exemple comportait 20 concurrents mais il peut y en avoir 25 - 15 avec un maxi de 80. J'avais prédéfinis les tableaux pour 2 juges avec 10 cases mais si il n'y a que 18 concurrents en mettant des formules je risque d'avoir un groupe à 10 et un à 8 ald de deux groupes de 9.
Merci
 

Tibo

XLDnaute Barbatruc
Re : Création de Groupes suivant une base de données variable sous conditions

re,

Correction des formules :

en F21 : le nombre de juges

Pour la ligne des titres :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*(ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0))>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0);"";INDEX($A$1:$D$1;MOD(COLONNES($A:A);5)))

à recopier vers la droite


Pour le tableau :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0)>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0;LIGNES($1:1)>ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0));"";INDEX(DECALER($A$1;ENT(COLONNES($A:A)/5)*ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0)+1;;ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0);4);LIGNES($1:1);MOD(COLONNES($A:A);5)))

à recopier vers la droite et vers le bas

Subsiste des 0 qu'on peut masquer avec un format personnalisé ou une MFC. On peut les gérer dans la formule, mais ça va l'alourdir.

Je te laisse tester

@+
 

Davidstarr

XLDnaute Nouveau
Re : Création de Groupes suivant une base de données variable sous conditions

re,

Correction des formules :

en F21 : le nombre de juges

Pour la ligne des titres :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*(ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0))>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0);"";INDEX($A$1:$D$1;MOD(COLONNES($A:A);5)))

à recopier vers la droite


Pour le tableau :

Code:
=SI(OU(ENT(COLONNES($A:A)/5)*ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0)>NBVAL($A:$A)-2;MOD(COLONNES($A:A);5)=0;LIGNES($1:1)>ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0));"";INDEX(DECALER($A$1;ENT(COLONNES($A:A)/5)*ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0)+1;;ARRONDI.SUP((NBVAL($A:$A)-1)/$F$21;0);4);LIGNES($1:1);MOD(COLONNES($A:A);5)))

à recopier vers la droite et vers le bas

Subsiste des 0 qu'on peut masquer avec un format personnalisé ou une MFC. On peut les gérer dans la formule, mais ça va l'alourdir.

Je te laisse tester

@+

Tibo
Je viens de tester en rajoutant des données, les 0 apparaissent lorsque le nombre de données n'est pas divisible par le nombre de juges.
je regarderais pour les effacer après.Le résultat me convient parfaitement. Cela va me permettre de faire des tableaux de groupe sans passer par des copier-coller.

Merci pour ton aide et ton temps passé sur ce problème
 

Discussions similaires

Statistiques des forums

Discussions
312 249
Messages
2 086 601
Membres
103 258
dernier inscrit
kalis03