-1

Я хотел бы проиллюстрировать четвертую переменную (ось x, ось y, размер пузыря, цвет пузыря), но не хочу искусственно разбивать серию на заранее определенные группы на основе набора порогов. Скорее, я хочу, чтобы каждый пузырь отражал определенные цвета ячейки (которые будут окрашены посредством условного форматирования на основе четвертой переменной).

Кто-нибудь знает, как это сделать?

1 ответ1

0

Как это устроено:

  1. Введите данные и заполните цвета.
  2. нажмите Вставить, Вставить точечную (X, Y) или Пузырьковую диаграмму и выберите пузырьковую диаграмму.
  3. Щелкните правой кнопкой мыши на графике и выберите « Выбрать данные» в меню.
  4. В « Выбор источника данных» нажмите « Добавить» и выберите относительные ячейки для ряда данных .
  5. Для первого текстового поля выберите ячейку A1 и ниже ячеек для других текстовых полей, таких как A2, A3, A4 .
  6. Повторите шаг 5 для столбца B & C и завершите с помощью Ok.
  7. Скопируйте и вставьте этот код 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
    
  8. Наконец, выберите область диаграммы и запустите код.

Вы получаете цвета пузыря, похожие на цвета заполненных ячеек.

Обратите внимание, что этот метод никогда не получает условно отформатированные цвета ячеек.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .