Déplacer le texte d'une case à un onglet en fonction de différents critères

Bonjour et merci d'avance pour votre aide en ce début d'année 2021!

Je suis désepéremment à la recherche d'une solution qui peut être n'existe pas sur excel... mais j'en doute.
Je reçois un CSV avec des données d'élèves que je transforme en excel afin de créer un planning de cours avec leur demande de niveau, horaire et jours.

Je souhaiterai une fois toutes ces données répertoriées, et au lieu de saisir à la main, que chacun des mails des élèves se copie automatiquement dans la feuille (intitulée par niveau) et dans le jour et heure choisi.

Par exemple, Anais a choisi le niveu B2.3 les mardi et jeudi de 10:30 a 12:00, je souhaite donc que son mail apparaisse dans la feuille B2.3 et dans la ligne qui correspond aux jours qu'elle a choisi et dans la colonne de l'horraire choisi.

J'ai essayé plusieurs fois via VBA mais cela dépasse amplement mes capacités.

Si l'un/e d'entre vous a une idée, je suis preneur !

Merci d'avance !!

11planningessaie.xlsm (53.56 Ko)

Bonjour,

Voici une proposition avec une formule matricielle ensuite recopiée par macro au reste du classeur.

J'ai utilisé un tableau structuré en feuille 1 et défusionné vos cellules des autres feuilles. J'ai l'impression qu'il pourrait exister des alternatives et que cette solution finira pas bloquer (dates en fonction du nom du jour). En tout cas, vous devriez songer à avoir des listes de validation dans vos colonnes Classe, Jour et Horaire, ça éviterait de problèmes.

Cdlt,

12planningessaie.xlsm (183.69 Ko)

Merci beaucoup pour votre aide, je vais étudier la formule pour essayé de déchiffrer comment vous avez trouvé la solution.
Et je vais m'atteler aux listes de validation, vous avez raison.

Merci encore et feliz año !

Feliz año, lo mejor !

Buenas tardes (à nouveau)
J'ai suivi vous conseil et créé un nouveau document consolidé.
Cependant j'essaie de comprendre votre formule afin d'y ajouter une autre filtre : en plus du niveau, horaire et jour, je voudrai rajouter la modalité (présentiel ou online) afin d'intégrer le mail dans la colonne correspondante.

J'ai tourné dans tout les sens en essayant de rajouter *((Hoja[[Modalidad]:[Modalidad]]=A1.1!$B2) et actualisé le reste (le tableau à beaucoup changé) mais rien y fait.

La formule que je tente d'utiliser en vain :

{=SI.ERROR(INDICE(Hoja[[Mail]:[Mail]];K.ESIMO.MENOR(SI(FILA(Hoja)*(Hoja[[Nivel]:[Nivel]]=A1.1!$A$1)*((Hoja[[Modalidad]:[Modalidad]]=A1.1!$B2)*((Hoja[[Opción 1]:[Opción 1]]=A1.1!$B1)*(Hoja[[Horario 1]:[Horario 1]]=A1.1!A$3)))>0;FILA(Hoja)-1;"");CONTAR.SI($A$3:$A3;$A3)));"")

Savez-vous où est le problème ?

2essaie3.xltm (73.57 Ko)

Merci d'avance,

Bonjour,

Le problème était essentiellement lié à la façon de bloquer les références (exemple : il faut bloquer sur la ligne B$1 et non sur la colonne $B1). Ensuite, il faudrait être attentif au NB.SI (CONTAR.SI) car en fonction des références, les résultats changeront. Dans le fichier, j'ai mis la formule (feuille A1.1) dès la ligne qui sert d'en-tête à première vue. A vrai dire, la présentation avec des sous-totaux et des lignes pour mettre en forme, c'est vraiment pas l'idéal. Justement la formule précédente (et la macro) a bien marché car il y avait un modèle simple. Maintenant, ça devient compliqué.

Il doit y avoir des solutions plus appropriées que celle-ci, sur une seule feuille, par macro uniquement avec idéalement une organisation cadrée en lignes sans démultiplication de colonnes, et avec des horaires communs...

En tout cas, voici votre fichier, sur lequel je n'ai mis à jour que la formule en A1.1 :

12essaie31.xlsx (77.40 Ko)

Cdlt,

Rechercher des sujets similaires à "deplacer texte case onglet fonction differents criteres"