
Я хотел бы проиллюстрировать четвертую переменную (ось x, ось y, размер пузырька, цвет пузырька), но не хочу искусственно разбивать ряд на предопределенные группы на основе набора пороговых значений. Вместо этого я хочу, чтобы каждый пузырек отражал определенные цвета ячейки (которая будет окрашена посредством условного форматирования на основе четвертой переменной).
Кто-нибудь знает, как это сделать?
решение1
Как это работает:
- Введите данные и залейте цвета.
- нажмитеВставлять,Вставить разброс (X, Y)или Пузыристый графики выберите пузырьковую диаграмму.
- Щелкните правой кнопкой мыши по диаграмме и выберитеВыбрать данныеиз меню.
- ИзВыберите источник данныхНажмитеДобавлять & выберите относительные ячейки дляСерия данных.
- Для первого текстового поля выберите ячейку
A1
и ячейки ниже для других текстовых полей, напримерA2, A3, A4
. - Повторите шаг 5 для столбца
B
&C
и завершите с помощьюХорошо. Скопируйте и вставьте этот код VB как стандартный модуль в таблицу.
Option Explicit Sub ColorChartSeries() Dim iRow As Long, iCol As Long Dim theBubbles As Range Dim theChart As Chart Dim theSeries As Series Dim thePoint As Point Set theChart = ActiveChart If (theChart.ChartType <> xlBubble And theChart.ChartType <> xlBubble3DEffect) Then MsgBox "This works only for bubble charts!" End End If For Each theSeries In theChart.SeriesCollection Set theBubbles = Range(theSeries.BubbleSizes) iRow = theBubbles.Row - 1 iCol = theBubbles.Column For Each thePoint In theSeries.Points iRow = iRow + 1 thePoint.Format.Fill.ForeColor.RGB = Cells(iRow, iCol).Interior.Color Next thePoint Next theSeries End Sub
Окончательно,выберите область диаграммы и ЗАПУСТИТЕ код.
Вы получаете цвета пузырьков, похожие на цвета заполненных ячеек.
Примечание, Этот метод никогда не получает цвета ячеек условного форматирования.