Barvy kontingenčního grafu - tipy pro Excel

Obsah

Shari pošle tento týden excelovou otázku.

Odpověď na tuto odpověď se mi nepodařilo najít z našeho oddělení IT, souborů nápovědy aplikace Excel nebo online nápovědy aplikace Microsoft Excel a doufám, že vám pomůžete.

Analyzuji data aplikace Excel po dobu dvaceti let a musím pro každý rok vytvořit výsečové grafy aplikace Excel. Grafy aplikace Excel jsou založeny na kontingenční tabulce (nebo kontingenčním grafu v aplikaci Excel 2000) s rokem jako polem stránky. Problémem je, že ne všechny roky obsahují stejné položky, takže každý graf aplikace Excel bude pro stejnou barvu používat jinou barvu. koláč plátek.

Snažíme se porovnávat data za těchto 20 let, takže mít stejné barvy pro každý graf je zásadní. Nakonec musím změnit každý mnoho řezů na mnoha grafech, aby odpovídaly prvnímu, někdy několikrát, protože barvy se mohou změnit, pokud se data změní, a musím přepočítat kontingenční tabulku, na které je graf založen.

MrExcel poprvé vyzkoušel kontingenční graf. Kontingenční grafy jsou velmi účinným způsobem, jak vytvořit graf pro několik různých scénářů dat, ale mají tuto nepříjemnou chybu. Nastavil jsem kontingenční tabulku s rokem třídy jako řádkem, rokem jako stránkou. Požádal jsem o třídění ročníku podle sestupného skóre. Jak změníte kontingenční graf z roku na rok, barvy výsečových koláčů přidružených k prváku se změní. Některé roky jsou členy ze všech čtyř tříd, jiné roky jsou členy pouze ze 3 tříd.

Ukázkový kontingenční graf

Excel použije na každý řez výchozí pořadí barev, takže odpovídající barvy se budou rok od roku měnit. Vidím, jak můj manažer znechuceně kroutí hlavou, když jsem mu podával tyto mapy.

Existuje způsob, jak vyřešit tento problém pomocí makra jazyka Visual Basic. Pokud nastavíte datové štítky tak, aby zobrazovaly název štítku, je možné v rámci jazyka Visual Basic najít název každého řezu. Jakmile budete mít název, můžete barvu tohoto řezu přebarvit na základě hodnoty jména.

Ukázkový kontingenční graf

Excel použil výše uvedené barvy pro rok 1990, ale v roce 1991 se barvy mění podle počtu položek a jejich pořadí:

Následující makro je pevně zakódováno pro konkrétní příklad Shari, kde má možné hodnoty pro prváka, Sophomore, juniora a seniora. Přidáním dalších příkazů Case s různými barevnými indexy můžete toto přizpůsobit tak, aby zvládly vaši konkrétní situaci.

Sub ColorPieSlices() ' Copyright 1999.com ' This macro will re-color the pie slices in a chart ' So that slices for a specific category are similarly colored ' Select the chart before calling the macro ' ' Find the number of pie slices in this chart NumPoints = ActiveChart.SeriesCollection(1).Points.Count ' Loop through each pie slice For x = 1 To NumPoints ' Save the label currently attached to this slice If ActiveChart.SeriesCollection(1). _ Points(x).HasDataLabel = True Then SavePtLabel = ActiveChart.SeriesCollection(1) _ .Points(x).DataLabel.Text Else SavePtLabel = "" End If ' Assign a new data label of just the point name ActiveChart.SeriesCollection(1).Points(x).ApplyDataLabels Type:= _ xlDataLabelsShowLabel, AutoText:=True ThisPt = ActiveChart.SeriesCollection(1).Points(x).DataLabel.Text ' Based on the label of this slice, set the color Select Case ThisPt Case "Freshman" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 3 Case "Sophomore" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 4 Case "Junior" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 5 Case "Senior" ActiveChart.SeriesCollection(1). _ Points(x).Interior.ColorIndex = 6 Case Else ' Add code here to handle an unexpected label End Select ' Return the label to it's original pre-macro state ActiveChart.SeriesCollection(1). _ Points(x).DataLabel.Text = SavePtLabel Next x End Sub

Spusťte editor VB pomocí alt-F11. Do Vložit - Modul. Postup vložení. Jako název zadejte ColorPieSlices a klikněte na OK. Zadejte výše uvedené makro.

Chcete-li usnadnit život, přiřaďte makro zkratce v aplikaci Excel. V aplikaci Excel proveďte Nástroje - Makro. Zvýrazněte ColorPieSlices a klikněte na tlačítko možností. Do pole klávesové zkratky zadejte písmeno „d“. Klikněte na OK a zavřete dialogové okno Makro kliknutím na „x“ v pravém horním rohu. Nyní, když změníte svůj kontingenční graf, můžete stisknout Ctrl + D a přebarvit řezy na preferovanou sadu barev.

Zajímavé články...