Заливка маркеров по цвету ячеек
Добрый день, сегодня пример выполнения заливки маркеров графика в соответствии с цветом ячеек. Собственно результат на скриншоте ниже:
Для того чтобы добиться такого результата требуется:
1. Иметь исходные данные. В нашем случае они представлены Х(А2:А9) и Y(В2:В9)
2. Иметь закрашенные ячейки в количестве равном количеству маркеров. В нашем случае ячейки Y закрашены с помощью условного форматирования.
3. По исходным данным построить график с наличием маркеров.
4. Перейти в редактор VBA (Alt+F11), создать в текущем документе модуль (если оный отсутствует), вставить макрос в поле , слегка поправить и выполнить макрос:
Public Sub color_graph()
ActiveSheet.ChartObjects("Диаграмма 1").Activate
For Each icell In [B2:B9]
ActiveChart.FullSeriesCollection(1).Points(icell.Row - 1).Select
Selection.Format.Fill.ForeColor.RGB = icell.DisplayFormat.Interior.Color
Next
End Sub
где требуется поправить (всего три места, и только при необходимости):
1. "Диаграмма 1" - название диаграммы (отображается в левом углу Excel при нажатии на график, не путать с тем что пишется на самой диаграмме).
2. "[B2:B9]" - диапазон ячеек откуда будут извлекаться цвета.
3. "icell.Row - 1" - определение сдвига ячеек указания цветов. Т.к. у нас данные начинаются с B2, т.е. они сдвинуты на 1 ячейку вниз, то "- 1". Если бы начинались с B5 , то было бы "icell.Row - 4".
Если имеется несколько графиков на одной диаграмме, то указываем номер обрабатываемой. В рассматриваемом примере обрабатывается первый и единственный график (о чём говорит "1" в FullSeriesCollection(1).) Для второго графика будет FullSeriesCollection(2).
=============
Это мой первый пост на Пикабу. Если аудитории зайдёт - у меня есть что рассказать интересного про использование Excel как в плане оформления, так и в плане расчётов. Не из учебников.

MS, Libreoffice & Google docs
761 пост14.9K подписчиков
Правила сообщества
1. Не нарушать правила Пикабу
2. Публиковать посты соответствующие тематике сообщества
3. Проявлять уважение к пользователям
4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.
По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях
Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.
Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.