Excel : comment réorganiser un tableau de façon dynamique ?
Fermécousinhub29 Messages postés 959 Date d'inscription mardi 10 août 2010 Statut Membre Dernière intervention 19 novembre 2024 - 14 avril 2023 à 11:45
- Excel : comment réorganiser un tableau de façon dynamique ?
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Mise en forme conditionnelle excel - Guide
13 réponses
12 avril 2023 à 14:28
Bonjour,
Une solution par le biais de Power Query (PQ) serait envisageable, selon la version Excel utilisée...
Si version >= à 2010 et <2016, il faudra télécharger un Add-On gratuit sur le site de µSoft.
Si version >= à 2016, PQ est en natif.
Cependant, pour répondre au plus près, si tu pouvais joindre un fichier exemple, exempt de toutes données confidentielles, via le site cjoint.com, ce serait plus facile pour t'aider.
@ te relire (avec ta version Excel...)
12 avril 2023 à 16:04
Bonjour et merci pour cette réponse rapide.
J'ai bien la version avec Power Querty, de ce côté aucun souci.
Pour joindre un fichier fictif excel, il n'y a que cjoint.com ? Il demande mon numéro de CB !
Merci d'avance
12 avril 2023 à 16:07
Re-,
Euh non, surtout pas...
Tu es bien sur ce site :
C'est entièrement gratuit
12 avril 2023 à 16:20
Oui, oui et on finit avec une activation du compte gratuit MAIS en devant rentrer sa CB !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question12 avril 2023 à 16:24
Euh, je l'utilise régulièrement, et on ne m'a jamais demandé de CB...
Tu cliques sur le bouton "Parcourir", tu choisis ton fichier, puis tu cliques sur "Créer le lien Cjoint", sans autre choix (pas d'adresse mail pour le suivi....)
Tu copies le lien, et tu le colles ici, c'est tout
12 avril 2023 à 16:28
ca y est, j'ai trouvé, enfin j'espère !
Il faut être vigilant, c'est très piégé cette page.
https://cjoint.com/c/MDmoAY2AJzk
12 avril 2023 à 16:44
Mon idée est que l'on remplisse la colonne O "div 2023-2024" dans l'onglet "base initial" pour définir la division et que cela incrémente le nom et le prénom sur une autre feuille un tableau avec en entête de colonne "1" , "2" , "3" jusqu'à "8".
ou sur une autre feuille, que je puisse mettre une étiquette "div 2023-24" avec filtre sur la feuille (comme dans un TC Dynamique) en gardant un tableau en dessous avec toutes les infos. J'avais en mémoire qu'en double cliquant cela générait automatique une feuille par donnée. C'est à dire qu'on aurait une feuille 1, feuille 2, feuille 3. Ensuite en les sélectionnant toutes, on peut les imprimer en une seule fois et sans passe par la méthode des sous totaux
12 avril 2023 à 17:16
Bonjour.
J'ai bien peur que pour réaliser l'ensemble des fonctionnalités que tu souhaites, il te faudra passer par un script VBA afin de créer une macro !
12 avril 2023 à 17:49
Re-,
Je dois dire que je ne vois pas trop ce que tu voudrais...
Est-ce que tu pourrais mettre un fichier résultat (juste un onglet, avec le tableau de rendu que tu désires, sur quelques lignes uniquement)
Ou avec un 2ème onglet, avec donc le tableau d'une division (la 1 par exemple)
Quelles données veux-tu conserver?
J'ai vu que tu avais commencé une requête PQ, mais je pense que tu n'as pas été au bout de tes souhaits...
@ Raymond, il existe depuis quelques années un outil hyper puissant qui peut (parfois) remplacer avantageusement le VBA. Il s'agit de Power Query (qui a donc la particularité de ne pas être systématiquement bloqué par les différents systèmes de sécurité de plus en plus réticents au VBA). Je ne dis pas que je vais forcément y arriver, mais dès que j'aurai un peu la trame, et le résultat désiré, je vais essayer...
Bonne soirée
12 avril 2023 à 21:38
Re,
Je suis allée voir cet outil PQ que je ne connais pas et je tatonne dedans, j'essaie de comprendre l'esprit...
En fait, j'aimerais bien que mes étiquettes de colonne soient issues des données de la feuille précédente et que le résultat reste dynamique, pas juste une transposition à un instant "T"
https://cjoint.com/doc/23_04/MDmtKZfdFWk_Donn%C3%A9es-fictives-tests-CCM.xlsx
Merci de l'intérêt et du suivi !
Je me demandais si Access pouvait aussi apporter une solution ?
12 avril 2023 à 20:31
bonsoir
Une proposition feuille 3
12 avril 2023 à 21:18
yclik
Oui c'est tout à fait ce que je voulais obtenir !
Par contre, c'est une formule assez complexe que je ne connais pas à moins qu'il soit possible de la suivre à partir des boîtes de dialogue des formules ?
Je pensais que c'était réalisable avec un système comme les TC ?
Déjà, je vois que ça fonctionne très bien !
Mille mercis
Modifié le 13 avril 2023 à 09:51
Bonjour,
Dans le fichier joint, les 2 requêtes. (PS, il n'y a pas 8 divisions, mais 9...)
Dans l'onglet "Global", le tableau de récap des divisions en colonnes
Dans l'onglet "Div", un menu déroulant pour choisir la division.
Pour mettre à jour, un clic droit dans la requête "Actualiser", ou dans le ruban "Données", le bouton "Actualiser tout"
On pourrait rajouter un code VBA pour que les mises à jour s'effectuent dès :
- Qu'on arrive sur l'onglet "Global"
- Qu'on choisit une division dans l'onglet "Div"
Tu me dis si ça correspond à tes souhaits
Bonne journée
https://cjoint.com/c/MDnhYiM1y8T
14 avril 2023 à 10:36
Bonjour,
Excellent ! Mille mercis, c'est tout à fait ce que je cherche à faire.
Je voudrais pouvoir le construire toute seule, c'est compliqué quand on a jamais utilisé PQ ?
Je vais dessus mais je ne trouve pas le moyen de modifier, j'importe bien ma base mais je me retrouve comme avec juste un second tableau identique au premier !
14 avril 2023 à 11:00
Bonjour,
Disons que PQ ne s'improvise pas tout seul...
Il y a plein de tutos sur le net (c'est d'ailleurs ainsi que j'ai commencé, puis du travail personnel, mais à la retraite, c'est vrai que c'est plus facile... :) )
Pour mettre à jour, il faut faire un clic droit dans une des cellules de la requête, puis "Actualiser" (ou dans le ruban "Données", cliquer sur "Actualiser tout".
Comme je te le disais, on peut automatiser la mise à jour par le biais d'un code VBA...
Sinon, as-tu regardé la solution "Formules"? Si tu as 365, tu peux encore améliorer le résultat en utilisant la fonction "Choisircols" (moi, je n'ai que xl2021, donc non dispo dans ma version)
Bonne journée (et découverte de PQ)
13 avril 2023 à 15:59
Re-,
Sinon, une alternative, par formules, mais cela dépend de la version Excel que tu utilises..
Si tu as Excel2021 ou 365, c'est bon, sinon, hélas...(et comme tu ne m'as pas donné ta version...)
Dans l'onglet "Formules", soit un filtre sur une division (Cellule A2 pour choisir la div), soit le tableau entier
Pour le choix par Div, je n'ai mis que "Nom-Prénom", mais on peut adapter la formule pour obtenir plus de données.
Au choix
https://cjoint.com/c/MDnn31OewYT
Bonne apm
14 avril 2023 à 11:11
Excellent cette formule "trier" et "filtre" Je retiens ! C'est simple et efficace :)
Pour concaténer les cellules, je maîtrise déjà et c'est très pratique.
Pour la version Excel, impossible de trouver dans les propriétés il est indiqué que c'est dans "office 16". C'est un accès via une école, pas une version perso
Mille mercis
14 avril 2023 à 11:15
Re-,
Quand tu cliques sur "Fichier/Compte", tu peux lire la version
14 avril 2023 à 11:27
Version 2303 dans "microsoft 365 Apps for enterprise"
Modifié le 14 avril 2023 à 11:46
Ok,
Donc la formule pour une division pourrait être améliorée avec la fonction "choisircols" (que je n'ai pas...)
Celle-ci te permettrait d'extraire les colonnes désirées selon le choix de la division dans la cellule A2
Sans filets donc, est-ce que tu pourrais essayer cette formule (que tu places dans la cellule C20 de l'onglet "Formules" de mon fichier, afin que la propagation puisse se faire - il ne faut pas de données à droite ni en dessous des formules dynamiques)
=CHOISIRCOLS(TRIER(FILTRE(T_Data;T_Data[Div 2023 2024]=Formules!A2));1;2;5;6)
Cette formule "devrait" te restituer les colonnes "Nom", "Prénom", "Age" et "Classe" (si je l'ai correctement écrite...)
Pour l'extraction globale, (1 division par colonne), je pense que les différentes formules (1 par colonne, en ligne 2) suffisent...