Кольори діаграми зведеної таблиці - Поради Excel

Зміст

Шарі надсилає запитання Excel на цьому тижні.

Я не зміг знайти відповідь на це в нашому ІТ-відділі, файлах довідки Excel або довідці Microsoft Excel в Інтернеті, і сподіваюся, що ви можете допомогти.

Я аналізую дані Excel протягом двадцяти років, і мені потрібно складати кругові діаграми Excel для кожного року. Діаграми Excel базуються на зведеній таблиці (або зведеній діаграмі в Excel 2000), а рік - як сторінка. Проблема полягає в тому, що не всі роки містять однакові елементи, тому кожна діаграма Excel використовуватиме інший колір для одного і того ж скибочка пирога.

Ми намагаємось порівняти дані за ці 20 років, тому однакові кольори для кожної діаграми є важливим. Врешті-решт мені доводиться міняти кожен багато фрагментів на багатьох діаграмах, щоб відповідати першому, іноді кілька разів, тому що кольори можуть змінюватися, якщо дані змінюються, і мені доводиться перераховувати зведену таблицю, на якій базується діаграма.

MrExcel вперше випробував зведену діаграму. Зведені діаграми - це дуже потужний спосіб створити діаграму для кількох різних сценаріїв даних, але у них є ця надокучлива вада. Я створив зведену таблицю з класом рік як рядок, рік як сторінку. Я попросив класний рік відсортувати на основі спадної оцінки. У міру зміни зведеної діаграми з року в рік, кольори скибочок пирога, пов’язаних із Freshman, змінюватимуться. Деякі роки є члени з усіх чотирьох класів, інші роки є члени лише з 3 класів.

Зразок зведеної діаграми

Excel застосовує порядок кольорів за замовчуванням до кожного зрізу, тому відповідні кольори будуть змінюватися з року в рік. Я бачу, як мій менеджер з огидою хитає головою, коли я вручав йому ці таблиці.

Існує спосіб вирішити цю проблему за допомогою макросу visual basic. Якщо ви встановите мітки даних для відображення назви мітки, тоді можна знайти ім'я кожного зрізу в межах 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, щоб перефарбувати скибочки пирога до бажаного набору кольорів.

Цікаві статті...