Найти в Дзене

📌 Условное форматирование диаграммы в зависимости от линии тренда на примере графика динамики продаж

Оглавление

Всем привет! 👋

Сегодня рассмотрим прием позволяющий изменять фон диаграммы в зависимости от значения линии тренда.

Условное форматирование диаграммы в зависимости от линии тренда на примере графика динамики продаж
Условное форматирование диаграммы в зависимости от линии тренда на примере графика динамики продаж

📢 Файл с примером кода размещен в конце статьи 🔽

-3

▶️ Линии тренда в Excel

- показывают направление и характер тренда данных на диаграмме. Они используются для визуального анализа данных и выявления возможных закономерностей или трендов, которые могут быть скрыты в данных.

Линия тренда может быть добавлена к различным типам диаграмм в Excel, включая графики рассеяния, графики с областями, графики с линиями и столбчатые графики. Она представляет собой линию, которая проходит через точки данных на диаграмме, наиболее точно отображая тренд этих данных.

Линии тренда могут быть линейными, полиномиальными, экспоненциальными или другими типами, в зависимости от выбранной математической модели для анализа данных.

Добавление линии тренда выполняется путем выбора диаграммы, затем открытия вкладки "Дизайн" или "Добавление элементов графика" и выбора опции "Линия тренда". Затем можно настроить тип линии тренда, его параметры и отображение на графике

В данном примере применен линейный тренд:

-4
-5

Задача: задать форматирование фона диаграммы в зависимости от направления линии тренда.

▶️ Наклон тренда

Функция НАКЛОН в Excel используется для вычисления наклона (коэффициента наклона) линии тренда между указанными данными. Формула =НАКЛОН(диапазон_значений_X; диапазон_значений_Y) принимает два аргумента: диапазон значений X и диапазон значений Y.

-6

Наклон линии тренда показывает, каким образом значения Y изменяются в зависимости от значений X. Положительное значение наклона указывает на положительную корреляцию между X и Y, тогда как отрицательное значение наклона указывает на отрицательную корреляцию. Значение близкое к нулю может указывать на отсутствие или слабую корреляцию между переменными.

В данном случае, формула =НАКЛОН(C3:C13; B3:B13) вычисляет наклон линии тренда между значениями в диапазоне C3:C13 (значения Y) и значениями в диапазоне B3:B13 (значения X). Результатом функции будет числовое значение, представляющее коэффициент наклона линии тренда.

▶️ Макрос

Данный код представляет собой процедуру Worksheet_Calculate, которая выполняется каждый раз, когда происходит пересчет листа. Процедура изменяет цвет графика в зависимости от значения ячейки C15.

При каждом пересчете листа будет изменяться цвет графика в зависимости от значения ячейки C15, отображая восходящий тренд (зеленый цвет), нисходящий тренд (оранжевый цвет) и белый цвет при значении ячейки C15=0
При каждом пересчете листа будет изменяться цвет графика в зависимости от значения ячейки C15, отображая восходящий тренд (зеленый цвет), нисходящий тренд (оранжевый цвет) и белый цвет при значении ячейки C15=0

📝 Описание кода:

  • В первой строке объявляются переменные myColor (тип Long) и myChart (тип String).
  • С помощью Application.EnableEvents = False отключается перехват событий, чтобы избежать бесконечного цикла пересчета.
  • С помощью условия If ActiveSheet.Name <> "Пример" Then Exit Sub проверяется, что код выполняется только на определенном листе с названием "Пример". Если это условие не выполняется, процедура завершается с помощью Exit Sub.
  • Присваивается значение "Chart 1" переменной myChart, которая указывает на название графика.
  • С помощью условия If Range("c15").Value > 0 Then и ElseIf Range("c15").Value < 0 Then определяется значение переменной myColor в зависимости от значения ячейки C15. Если значение положительное, то myColor будет равен RGB(135, 235, 145) (зеленый цвет), если отрицательное, то myColor будет равен RGB(250, 190, 145) (оранжевый цвет). В противном случае, когда значение равно 0, myColor будет равен RGB(255, 255, 255) (белый цвет).
  • Активируется график с помощью ActiveSheet.ChartObjects(myChart).Activate.
  • Задается цвет области графика с помощью блока With ActiveSheet.Shapes(myChart).Fill и свойства .ForeColor.RGB.
  • Задается цвет области построения графика с помощью блока ActiveChart.PlotArea.Select и свойства Selection.Format.Fill.
  • С помощью Application.EnableEvents = True включается перехват событий.

▶️ Результат

  • нисходящий тренд
-8
  • восходящий тренд
-9
-10
Наша команда очень заинтересована в создании качественного и полезного контента. Поэтому, если Вам понравился этот урок, не забудьте поблагодарить автора лайком 👍. Если у Вас есть вопросы или своё решение, не стесняйтесь оставить комментарий 💬. Нужно решение для другой проблемы? Пожалуйста, напишите свой вопрос в комментариях 💬, и мы обязательно рассмотрим его в ближайшей теме обзора. Мы ценим Вашу обратную связь 💝, так как это помогает нам оценить, насколько данный материал был полезен для Вас
Наша команда очень заинтересована в создании качественного и полезного контента. Поэтому, если Вам понравился этот урок, не забудьте поблагодарить автора лайком 👍. Если у Вас есть вопросы или своё решение, не стесняйтесь оставить комментарий 💬. Нужно решение для другой проблемы? Пожалуйста, напишите свой вопрос в комментариях 💬, и мы обязательно рассмотрим его в ближайшей теме обзора. Мы ценим Вашу обратную связь 💝, так как это помогает нам оценить, насколько данный материал был полезен для Вас

СКАЧАТЬ ПРИМЕР