Заполнение графика цветом - PullRequest
0 голосов
/ 19 мая 2018

Я хочу отформатировать ряды на моем графике, я зарегистрировал макрос:

ActiveChart.FullSeriesCollection(1).Select
With Selection.Format.Fill
    .Visible = msoTrue
    .ForeColor.RGB = RGB(146, 208, 80)
    .Transparency = 0
    .Solid
End With

и затем вставил его в свой код:

        With Wykres
            .ShowLegendFieldButtons = False
            .ShowValueFieldButtons = False
            .ShowAxisFieldButtons = False
            .ShowAllFieldButtons = False
            .Legend.Delete
            .ChartStyle = 340
            .SetElement (msoElementChartTitleAboveChart)
            .ChartTitle.Text = "Ilość w podziale na województwa"
            .SetElement (msoElementDataLabelOutSideEnd)
            .Parent.RoundedCorners = True
            .ChartArea.Format.Line.ForeColor.RGB = KolorUzytkownika
            .FullSeriesCollection.Format.Fill.ForeColor.RGB = KolorUzytkownika
        End With

, но что-то не так с последнимстрока моего кода.Я получил сообщение: «Объект не поддерживает это свойство или метод».Я использую позднюю привязку, но, думаю, здесь это не имеет значения.

Ответы [ 2 ]

0 голосов
/ 19 мая 2018

Это перебирает и форматирует все серии на графике, относящиеся к 1-му ChartObject к 1-му Worksheet.В вашем случае замените Worksheets(1).ChartObjects(1).Chart на Wykres:

Sub formatChartSeries()

    Dim s

    For Each s In Worksheets(1).ChartObjects(1).Chart.SeriesCollection
        s.Format.Fill.ForeColor.RGB = RGB(146, 208, 80) 'format fill / marker
        s.Format.Line.ForeColor.RGB = RGB(146, 208, 80) 'format border / line
    Next s

End Sub

Вышеуказанное решение совместимо с Excel 2010, который не поддерживает FullSeriesCollection.

0 голосов
/ 19 мая 2018

.FullSeriesCollection относится к типу Collection.Вы не можете получить доступ / изменить свойство типа Series для типа Collection.Отсюда и ошибка.

enter image description here

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

.FullSeriesCollection(1).Format.Fill.ForeColor.RGB = RGB(255, 0, 0)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...