Цветове на диаграмата на обобщената таблица - Съвети на Excel

Съдържание

Шари изпраща въпрос за Excel тази седмица.

Не успях да намеря отговора на този от нашия ИТ отдел, помощните файлове на Excel или онлайн помощта на Microsoft Excel и се надявам да помогнете.

Аз анализирам данните на Excel за период от двадесет години и трябва да правя кругови диаграми на Excel за всяка година. Графиките на Excel се базират на обобщена таблица (или обобщена диаграма в Excel 2000), като годината е поле на страница. Проблемът е, че не всички години съдържат едни и същи елементи, така че всяка диаграма на Excel ще използва различен цвят за един и същ филийка за пай.

Опитваме се да сравним данните през тези 20 години, така че наличието на еднакви цветове за всяка диаграма е от съществено значение. В крайна сметка се налага да сменям всеки много срезове на много диаграми, за да съвпадна с първия, понякога няколко пъти, защото цветовете могат да се променят, ако данните се променят и трябва да преизчисля обобщената таблица, на която се основава диаграмата.

MrExcel изпробва пивотната диаграма за първи път. Осевите диаграми са много мощен начин за създаване на диаграма за няколко различни сценария на данни, но те имат този досаден недостатък. Настроих обобщената таблица с клас година като ред, година като страница. Поисках класната година да се сортира въз основа на низходящи резултати. Докато сменяте осевата диаграма от година на година, цветовете на филийките на пай, свързани с Freshman, ще се променят. Някои години има членове и от четирите класа, други години членове само от 3 класа.

Примерна обобщена диаграма

Excel прилага реда на цветовете по подразбиране към всеки отрязък, така че съответните цветове ще се променят от година на година. Виждам как мениджърът си поклаща глава с отвращение, докато му връчвам тези карти.

Има начин с визуален макрос за решаване на този проблем. Ако настроите етикетите с данни да показват името на етикета, тогава е възможно да намерите името на всеки отрязък от visual basic. След като имате име, можете да пребоядисате цвета на този парче въз основа на стойността на името.

Примерна обобщена диаграма

Excel използва цветовете по-горе за 1990 г., но през 1991 г. цветовете се променят с промяната на броя на елементите и тяхната последователност:

Следният макрос е кодиран твърдо за конкретния пример на Шари, където тя има възможни стойности за първокурсник, второкурсник, младши и старши. Чрез добавяне на допълнителни изявления за Case с различни цветови индекси, можете да персонализирате това, за да се справите с вашата конкретна ситуация.

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

Стартирайте VB редактора с alt-F11. Направете вмъкване - модул. Вмъкване на процедура. Въведете ColorPieSlices като Име и щракнете върху OK. Въведете горния макрос.

За да улесните живота, задайте макроса на пряк път в Excel. В Excel направете Инструменти - Макрос. Маркирайте ColorPieSlices и щракнете върху бутона с опции. В полето за клавишни комбинации въведете "d". Щракнете върху OK и затворете диалоговия прозорец Macro, като щракнете върху "x" в горния десен ъгъл. Сега, след като промените сводната диаграма, можете да натиснете Ctrl + D, за да преоцветете филийките на пай в предпочитания от вас набор от цветове.

Интересни статии...