Slicer pour deux ensembles de données - Conseils Excel

Table des matières

Rick du New Jersey pose des questions sur la configuration d'un segment pour contrôler deux tableaux croisés dynamiques provenant de deux ensembles de données différents. J'ai résolu cela dans le passé en utilisant du VBA. Mais aujourd'hui, je pense qu'il existe un moyen plus simple d'utiliser le modèle de données.

Le contrôle des tableaux croisés dynamiques multipliés est l'un des principaux avantages des segments. Mais ces deux tableaux croisés dynamiques doivent provenir du même ensemble de données. Lorsque vous disposez de données provenant de deux ensembles de données différents, l'utilisation d'un segment pour contrôler les deux ensembles de données devient plus difficile.

Pour utiliser la technique de cet article, vos tableaux croisés dynamiques doivent être basés sur un modèle de données. Si vous avez des tableaux croisés dynamiques qui ne sont pas basés sur le modèle de données, vous devez les supprimer et recommencer.

Remarques

  • Si tous vos tableaux croisés dynamiques sont basés sur le même ensemble de données, il est plus facile de les configurer pour utiliser les mêmes segments. Regardez l'épisode 2011.

  • Si vous utilisez un Mac et que vous ne disposez pas du modèle de données, vous pourrez peut-être résoudre le problème à l'aide de VBA. Regardez l'épisode 2104.

Le modèle de données est plus simple que la solution VBA.

L'étape clé consiste à créer une nouvelle table SlicerSource. Si vos deux ensembles de données contiennent un champ appelé Secteur et que vous souhaitez que le tableau croisé dynamique soit basé sur Secteur, copiez les secteurs des deux tables dans une nouvelle table. Utilisez Données, Supprimer les doublons pour créer une liste unique des secteurs trouvés dans l'une ou l'autre table.

Construisez une troisième table pour être la source du segment

Lorsque vous créez un tableau croisé dynamique à partir de chacun des deux ensembles de données, assurez-vous de cocher la case Ajouter ces données au modèle de données.

Ajouter les données au modèle de données

Lorsque vous insérez un segment, il y aura deux onglets en haut. Utilisez le deuxième onglet - appelé Tous. Recherchez la table source du segment et créez le segment à partir de là.

Recherchez Slicer Source dans l'onglet Tous.

Au départ, un seul tableau croisé dynamique répondra au segment. Sélectionnez l'autre tableau croisé dynamique et choisissez Filtrer les connexions.

Connectez l'autre tableau croisé dynamique à la trancheuse

Le résultat sera deux tableaux croisés dynamiques (provenant de différents ensembles de données) qui réagissent au segment.

Succès

Cette méthode semble bien plus simple que la méthode VBA décrite dans la vidéo 2104.

Regarder la vidéo

Transcription vidéo

Apprenez Excel à partir du podcast, épisode 2198: un segment pour deux ensembles de données.

Salut, bon retour sur le netcast, je suis Bill Jelen. J'étais dans le New Jersey pour y faire un séminaire, et Rick a posé une question, il a dit: "Hé, écoutez, j'ai des tableaux croisés dynamiques construits sur deux ensembles de données différents et j'aimerais qu'un segment soit capable de les contrôler." Et maintenant, j'ai fait une vidéo à ce sujet - Episode 2104 - qui utilisait du VBA, mais cette vidéo a vraiment causé beaucoup de problèmes parce que les gens ont des segments basés sur des données qui ne correspondent pas. Et donc, vous savez, je me suis demandé s'il y avait un moyen plus simple de faire cela sans le VBA.

Et donc, j'ai une table ici à gauche qui a Sector, et j'ai une table à droite qui a Sector. Et si j'ai des tableaux croisés dynamiques existants sur ces deux ensembles de données, je dois me débarrasser de ces tableaux croisés dynamiques - je dois tout simplement recommencer complètement. Et ce que nous allons faire, c'est que nous allons construire une troisième table qui va vivre entre les deux autres tables, et cette table va être vraiment simple - ce sera juste une liste de tous les secteurs. Je prends donc les secteurs de la table de gauche, je prends les secteurs de la table de droite, je les colle tous ensemble, puis je choisis l'ensemble complet, et sous Données, choisissez Supprimer les doublons - ici même - et nous nous retrouvons avec juste la liste unique des secteurs. Bien? Ensuite, nous devons prendre chacun de ces tableaux et les transformer en - Formater en tant que tableau en utilisant Ctrl + T, d'accord.Alors je prends celui de gauche, Ctrl + T; "Ma table a des en-têtes", Oui; le deuxième, Ctrl + T, "Mon tableau a des en-têtes, Oui; le troisième, Ctrl + T," Mon tableau a des en-têtes ". Maintenant, Microsoft donne ces noms vraiment ennuyeux, comme" Tableau 1 "," Tableau 2 "et" Tableau 3 ", et je vais les renommer - je vais appeler celui de gauche Sales, je vais appeler celui du milieu ma source Slicer, puis celui-ci ici, j'appellerai Prospects. Bien.Je vais appeler celui du milieu ma source Slicer, puis celui-ci ici, j'appellerai Prospects. Bien.Je vais appeler celui du milieu ma source Slicer, puis celui-ci ici, j'appellerai Prospects. Bien.

Donc, j'ai les trois tableaux et je dois en quelque sorte enseigner à Excel que ce tableau est lié à la fois à ce tableau et à ce tableau ici. Nous arrivons donc aux relations - Données, relations, et je vais créer une nouvelle relation à partir de la table Ventes. Il contient un champ appelé Secteur lié à la source du segment - Secteur, cliquez sur OK. Maintenant, créez une autre relation à partir du côté droit, à partir de la table Prospect - il a un champ appelé Secteur, il est lié à Slicer Source, le champ appelé Sector, cliquez sur OK.

Donc, maintenant, j'ai appris à Excel quelle est la relation, à la fois de celle-ci à la source du segment, et de celle-ci à cette source du segment. Maintenant, à ce stade, je peux créer mes deux tableaux croisés dynamiques. Donc, je commence ici, Insérer, Tableau croisé dynamique, assurez-vous de cocher la case "Ajouter ces données au modèle de données, et nous pouvons créer un bon rapport sur le client, et peut-être le chiffre d'affaires - comme ça. Je veux voir ce haut à faible - donc Data, Z à A, et je veux le réduire aux 5 premiers, aux 3 premiers, ou quelque chose du genre. Excellent, d'accord. Ensuite, je veux créer un deuxième tableau croisé dynamique qui utilise le second ensemble de données. Donc, à partir d'ici - Insérer, tableau croisé dynamique, assurez-vous à nouveau de "Ajouter ces données au modèle de données", cette fois je vais les mettre sur la même feuille, afin que nous puissions voir comment ils interagissent avec Cliquez sur OK.Et nous obtiendrons un nombre unique de prospects. Cela commence par un nombre de prospects, mais si je vais dans les paramètres de champ, parce que j'utilise le modèle de données, j'ai un calcul supplémentaire ici en bas appelé Count - Distinct Count. Cliquez sur OK, et nous placerons le secteur ici afin que nous puissions voir combien de prospects il y avait dans chacun de ces secteurs. D'accord, magnifique, tout fonctionne très bien.

Maintenant, ce que je veux faire, c'est insérer un slicer, mais le slicer ne sera pas basé sur la table Sales, ni sur la table Prospects; ce segment sera basé sur la source du segment. D'accord, nous choisissons donc un nouveau slicer basé sur la source du slicer, le champ est Sector, nous obtenons notre slicer ici, changez la couleur si vous le souhaitez. Bon, alors, faites simplement un test ici - choisissez, par exemple, Conseil, et vous verrez que ce tableau croisé dynamique est en cours de mise à jour mais que ce tableau croisé dynamique ne se met pas à jour. Donc, à partir de ce tableau croisé dynamique, accédez aux outils de tableau croisé dynamique - Analyser, filtrer les connexions et relier ce tableau croisé dynamique au filtre de secteur. Et puis, au fur et à mesure que nous choisissons, vous voyez que ce tableau croisé dynamique est mis à jour et que ce tableau croisé dynamique est également mis à jour. Aucun VBA que ce soit.

Hé, assurez-vous de consulter mon nouveau livre, MrExcel LIVe, Les 54 meilleurs conseils de tous les temps. Cliquez sur ce "I" dans le coin supérieur droit pour plus d'informations.

Aujourd'hui, Rick du New Jersey a demandé si un slicer pouvait contrôler les tableaux croisés dynamiques provenant de plusieurs sources. Et même si j'ai fait cela dans l'épisode 2104, avec une solution VBA, nous pouvons nous passer de VBA en utilisant le modèle de données. Cela nécessite Windows, version d'Excel - Excel 2013 ou plus récent - et si vous avez des tableaux croisés dynamiques qui ne sont pas basés sur le modèle de données, supprimez-les, recherchez les champs en commun entre vos deux ensembles de données, copiez chaque champ dans un nouvelle table et utilisez Supprimer les doublons pour obtenir une liste unique de ce champ. Vous disposez désormais de trois ensembles de données: l'ensemble de données d'origine, l'autre ensemble de données et ce nouveau. Faites de chacun d'eux un tableau en utilisant Ctrl + T; construire une relation entre l'ensemble de données de gauche et cette nouvelle table; entre le bon jeu de données et la nouvelle table; puis, lorsque vous créez vos deux tableaux croisés dynamiques pour chacun, dites "Ajouter ces données au modèle de données "; lorsque vous créez un segment, vous devez cliquer sur l'onglet Tous pour voir ce troisième tableau; choisir dans la source du segment, ce petit tableau minuscule; puis l'un des deux tableaux croisés dynamiques ne va pas être lié au segment; sélectionnez une cellule dans ce tableau croisé dynamique; utilisez Filtrer les connexions pour connecter le tableau croisé dynamique et le segment.

Pour télécharger le classeur à partir de la vidéo d'aujourd'hui, accédez à l'URL dans la description YouTube et, vous savez, vous pouvez télécharger le livre.

Eh bien, je veux je vous remercie d'être passé, je vous verrai la prochaine fois pour une autre diffusion sur Internet.

Télécharger le fichier Excel

Pour télécharger le fichier Excel: slicer-for-two-data-sets.xlsx

Excellente pensée du jour

J'ai demandé à mes amis Excel Master leurs conseils sur Excel. Pensée d'aujourd'hui à méditer:

"Excel n'appartient à aucune discipline spécifique, ni à aucune personne talentueuse. C'est un logiciel général qui peut être utile à n'importe quelle discipline et à n'importe qui."

saeed Alimohammadi

Articles intéressants...