Enigme sur Excel (liste automatique)
Chère Communauté Excel,
J'ai besoin d'aide (voir fichier ci-joint).
Explication : 4 onglets sur ce fichier.
- 1 onglet inscriptions avec des personnes, des mails, et 4 choix de cours pour une formation
- 1 onglet répartition dans lequel je décide quels cours suivront ces personnes (colonnes J, K, L)
- 1 onglet liste, dans lequel je souhaite créer des listes de classes que je pourrai remettre aux professeurs.
Pour créer ces listes de classes, j'ai utilisé l'onglet CALCUL. Je n'ai pas trouvé d'autre solution pour créer une liste de classe sans espaces entre les participants (il faut savoir qu'il peut y en avoir potentiellement une centaine). Je passe par CALCUL et par cette formule miraculeuse que m'a donnée un ami =SI(B2<>"";MAX($D$1:$D1)+1;"") pour arriver à créer mes listes de classes sans espaces. (j'avoue ne pas avoir compris encore cette formule, mais au moins elle fonctionne.
Ma question : est-il possible de passer directement de l'étape répartitions (colonnes J, K, L) à l'étape liste de classes, sans passer par l'onglet CALCUL ?
D'avance merci pour vos réponses!
Cordialement,
benupton
Bonjour
Quelle version Excel utilises-tu ?
Pourquoi ne pas utiliser au mieux les possibilités d'Excel plutôt qu'un nombre pléthorique de formules pour la plupart inutiles ?
En plus lier des onglets avec des formules de type
=inscriptions!A2
va forcément conduire un jour ou l'autre à l'explosion du truc : un tri, volontaire ou non, une suppression ou insertion et tout part en vrille
Pourquoi ne pas ajouter les colonnes de répartition sur l'onglet inscriptions à droite des autres colonnes ?
Une proposition avec un tableau structuré pour les inscriptions, répartitions et CA, traité par requêtes PowerQuery (intégré à Excel 2016 et +, sur Windows)
J'ai créé une requête par classe mais on pourrait avoir une seule requête avec le choix de la classe à consulter/imprimer
Adapter le tableau de l'onglet Table pour les 2 infos à faire figurer en tête des listes. La colonne CA en dépend sans doute aussi mais avec ton classeur rempli de #REF...
Utiliser Données, Actualiser tout quand Inscription ou le tableau de l'onglet Table est modifié
Merci beaucoup pour ta réponse, 78chris.
Je vois à quel point je ne suis qu'un néophyte avec Excel. (ma version 15.39)
Ta proposition est certainement beaucoup trop évoluée pour moi. Premièrement, je ne sais pas du tout ce que sont ces PowerQuery.
Mais ma question principale serait surtout : dans mon exemple, j'avais créé l'onglet CALCUL. Dans ton exemple, tu as créé l'onglet Tables (pour faire cette PowerQuery si j'ai bien compris). Donc au final, bien que nos méthodes diffèrent, toi et moi avons chacun un onglet supplémentaire pour arriver à nos fins, à savoir une liste de classe. Du coup, penses-tu qu'il serait possible de s'en passer ?
Après, je vais me laisser du temps pour essayer de comprendre ta solution, mais encore une fois, j'ai beaucoup à apprendre (à juste titre) sur les fonctionnalités d'Excel, car ma logique me pousse surtout à essayer les formules.
Merci encore pour ton aide très précieuse!
Cordialement,
Benupton721
RE
15.39 n'est pas une version : il faut indiquer 2016, 2019, 2021 ou 365 et si Mac le préciser
D'où sors tu les titres de tes listes au-dessus des colonnes nom et prénom et mail ?
Ton exemple affiche des erreurs #REF en quantité ce qui n'aide pas à comprendre mais laisse supposer qu'il y a quelque chose en ligne 1 au-dessus des titres nom et prénom et mail.
Si ce n'est pas le cas, on peut enlever cette table dont l'usage n'a rien à voir avec ton onglet CALCUL
J'essaye de te proposer une méthode saine car, comme dit, rien ne va dans ton approche : des tas de formules sur des tas de lignes dont celles à proscrire liant des onglets par =
Je n'ai rien contre les formules utilisées à bon escient mais ventiler 2 onglets vers 4 listes par formules cela tient de l'usine à gaz
RE
Merci encore pour tes précisions. Je suis sur Excel 2016. J'ai essayé de repensé mon concept, et je pense que tu as raison sur les renvois multiples avec toutes ces formules entre les différents onglets. J'ai essayé de simplifier mon problème (nouveau document joint) :
1 onglet inscription avec les choix des participants (H, I, J, K) et les cours que je leur attribue (N, O, P).
1 onglet liste. Du coup, y'a-t-il un moyen pour que, SI j'inscris "1" en B2 (dans l'onglet liste), qu'Excel me mette la liste des participants inscrits au cours 1 dans les colonnes N, O, P dans inscription ?
J'ai l'impression que ça simplifie, mais j'aurais quand même bien voulu passer par une formule, davantage que par PowerQuery que je ne maîtrise absolument pas. Mais je vais m'y intéresser! :-)
Merci d'avance pour ton aide!
Cordialement.
Bonjour
Que tu utilises ou non PowerQuery il faut utiliser des tableaux structurés : ils sont dans Excel depuis 19 ans...
Ce pourquoi je me suis décarcassé à modifier l'onglet Inscriptions pour le normaliser. Dès que tu sautes des colonnes ou des lignes, fusionnes, ... tu multiplies les problèmes d’exploitation
Tes noms de cours et de prof nécessitent une table (ce que j'avais proposé avec la table de l'onglet Table) si on veut rendre les choses facilement évolutives.
Avec 365 on a un plus grand nombre de fonctions de calcul disponibles : 3 formules assez simples utilisant la fonctions FILTRE suffisent à te construire une liste entière)
Mais avec 2016 il faut des formules matricielles complexes et gourmandes et sur 40 lignes
En numérotant les listes de 1 à 40, on ne récupère pas le matricule de l'élève ce qui complique les formules des 2 colonnes
Merci beaucoup!
Je commence à entrevoir les choses différemment. Merci pour ton aide précieuse, et je vais méditer tout ça.
Cordiales salutations,
benupton721