Изменение цвета точки в диаграмме excel VBA
У меня есть эта диаграмма, в которой, если какая-либо точка на графиках превышает определенный предел, ее цвет должен измениться.
может ли кто-нибудь предложить мне, как получить диаграмму в VBA, а затем применить такое условие e.g я хочу изменить цвет самой высокой точки На приведенном выше графике . Любая помощь будет высоко оценена.
2 ответов
использование: ActiveWorkbook.Sheets("Sheet1").ChartObjects("Chart1").Chart.SeriesCollection(1)
цвет каждой точки .Points(PointNumber).Interior.Color
количество очков, которые вы должны цикл, хотя это .Points.Count
значение каждой точки составляет .Points(PointNumber).Value
цвета самих маркеров (применяется только для линейных, рассеивающих и радиолокационных диаграмм):
.Points(PointNumber).MarkerBackgroundColor = RGB(0,255,0) ' green
.Points(PointNumber).MarkerForegroundColor = RGB(255,0,0) ' red
.Points(PointNumber).MarkerStyle = xlMarkerStyleCircle ' change the shape
давайте рассмотрим другой подход, который не требует никакого кода.
предположим, что ваши данные находятся в Столбцах A (порядковый номер или время) и B значение, начиная с A2 и B2, так как ваши метки находятся в A1 и B1. Мы добавим серию на диаграмму, которая включает любые отклоняющиеся значения из столбца B. Эта серия нарисует маркер перед любыми отклоняющимися точками, чтобы исходная точка все еще присутствовала, и вместо переформатирования этой точки новая серия отображает точку.
In ячейка C1, введите "Deviant".
в ячейке C2 введите формулу, которая обнаруживает отклоняющуюся точку, что-то вроде:
=IF (AND (B2>upperlimit, B2
Это помещает значение в столбец C, если столбец B превышает верхний и нижний пределы, иначе он помещает #N/A в столбец C, #N / A не приведет к построенной точке.
скопируйте данные в столбец C, выберите диаграмму и вставьте Special как новый ряд. Формат этой серии имеют линия и любой яркий маркер хотите использовать, чтобы указать неконтролируемую точку.