Колір діаграми з осередків з її даними

Постановка задачі

Хотілося б, щоб стовпці на гістограмі (або часточки на кругової і т.п.) автоматично мали той колір, який був використаний для заливки відповідних їм осередків з вихідними даними:

Колір діаграми з осередків з її даними

Передбачаючи здивовано-обурені крики окремих товаришів, треба відзначити, що, звичайно ж, колір заливки на діаграмі можна міняти і вручну (правою кнопкою по стовпцю - Формат точки / ряду даних (Format data point / series) і т.д. - ніхто не сперечається. Але на практиці трапляється купа ситуацій, коли простіше і зручніше зробити це безпосередньо в осередках з даними, а діаграма потім повинна перефарбуватися вже автоматично. Спробуйте, наприклад, поставити заливку по регіонах для стовпців на цій діаграмі:

Колір діаграми з осередків з її даними

Думаю, ви зрозуміли ідею, так?

Тепер можна закрити Visual Basic і повернутися в Excel. Використовувати створений макрос дуже просто. Виділіть діаграму (область діаграми, а не область побудови, сітку або стовпці!):

Колір діаграми з осередків з її даними

і запустіть наш макрос за допомогою кнопки Макроси на вкладці Розробник (Developer - Macros) або за допомогою комбінації клавіш Alt + F8. У тому ж вікні можна, в разі частого використання, призначити макросу сполучення клавіш за допомогою кнопки Параметри (Options).

Єдиною ложкою дьогтю залишається неможливість застосування подібної функції для випадків, коли колір осередкам вихідних даних призначається за допомогою правил умовного форматування. На жаль, Visual Basic не має вбудованих засобів для зчитування таких кольорів. Є, звичайно, певні "милиці". але працюють вони не для всі випадків і не у всіх версіях.

Посилання по темі