J'ai un réseau VBA d'articles dans la colonne 1 et les articles qu'ils se nourrissent dans la colonne 2. Je veux avoir un moyen visuel propre pour illustrer un effet "ramifiant" sur la feuille de calcul, mais je suis une perte sur ce que la meilleure méthode serait.
Cette question est donc plus "Quelle est la meilleure méthode à utiliser "Kinda Chose. P>
Juste pour visualiser cependant, disons que mon tableau ressemble à ceci: (Col1 et Col2 séparés par un espace) P>
PowerStrip1 |---> TV |---> DVDPlayer PowerStrip2 |---> Soundbar
3 Réponses :
Impossible de commenter @ HARUN24HR, en ajoutant cela comme nouvelle réponse p>
Après avoir créé une table de pivot comme mentionné par @ HARUN24HR, essayez ce qui suit p>
dans les champs de table pivot, cliquez sur la liste déroulante disponible dans les champs de champ et sélectionnez Paramètres de champ. Cela ouvrira une pop up p> li>
sur les sous-totaux et les filtres, sélectionnez le bouton radio en plus "Aucun" p> li>
Allez maintenant à la mise en page et imprimer p> li>
avoir le bouton radio à côté "Afficher les éléments étiquettes dans le formulaire de contour vérifié p> li>
maintenant et non sur la case à cocher ci-dessous p> li> ol>
Je crois que cela donnera le résultat souhaité p>
Merci gars, Harun24hr a fourni une solution parfaitement bonne solution, mais je souhaitais également partager une solution différente, j'ai proposé cela affiché les informations dans un format d'arborescence au cas où il aide toute autre personne.
Disons. Le nom de la feuille est "Résumé" et la gamme d'informations à utiliser est A2: B200. Supposons que les informations "parent" sont dans la colonne "A" et les informations "enfant" sont dans la colonne "B". P>
En outre, vous devez accéder à l'onglet Développeur -> Insérer -> Contrôles actifs x -> Plus de commandes -> Microsoft TreeView Control, version 6.0. C'est le contrôle TreeView qui montrera nos informations. P>
J'ai changé le nom du contrôle TreeView en "TV" pour la simplicité. P>
Voir le code ci-dessous: P>
Sub TreeViewStuff() 'Using TreeView Nodes to populate the power sources summary 'Clear pre-existing nodes Dim arr as variant Dim str as string Dim i as integer On Error Resume Next Sheets("Summary").tv.Nodes.Clear 'Copy range into an array arr = Sheets("Drop Downs").Range("A2:B200") 'The first column of the array contains the parents, lets add them as keys For i = 1 To UBound(arr) str = "" 'Add the parent Sheets("Summary").tv.Nodes.Add Key:=arr(i, 1), Text:=arr(i, 1) 'Expand the node Sheets("Summary").tv.Nodes(Sheets("Summary").tv.Nodes.Count).Expanded = True Err.Clear Next i 'The second column will contain the kids, lets add them For i = 1 To UBound(arr) str = "" 'Add the kids Sheets("Summary").tv.Nodes.Add arr(i, 1), tvwChild, arr(i, 2), arr(i, 2) 'Expand the node Sheets("Summary").tv.Nodes(Sheets("Summary").tv.Nodes.Count).Expanded = True Err.Clear Next i End Sub
Il n'y a vraiment pas de "meilleure façon" car tout dépend de ce que vous envisagez de faire avec elle après. Visuellement, dans sa forme la plus simple, je ferais la première colonne sur les rangées de toutes les lignes enfants, (comme ceci: i.imgur.com/jogn592.png ) Mais si vous avez besoin de suivre les valeurs d'identification, cela va devenir complexe, mais s'il s'agit simplement d'un rapport, c'est assez simple. Excel peut ou non être le bon outil pour cela. Vous voudrez peut-être aussi rechercher des tables de pivot car il possède une partie de cette fonctionnalité intégrée.