누적 막대 그래프에서 서로 다른 요소의 타이밍을 쌓아서 작업 요소를 표시하는 Excel에서 Yamazumi 차트를 만들려고합니다. 나는 지금 얻고있는 무지개 색 대신에 레이블을 기반으로 색칠 할 수 있기를 원합니다. 예를 들어 VA가있는 경우 VA의 모든 요소를 그래프에서 녹색으로 표시하고 싶습니다. 이것은 Excel의 데이터 예입니다. 나는이 VBA 코드를 시도했지만 작동하지 않는 것 도보 및로드 카트 NVA 6.35 Excel DataExcel 누적 막대 차트 레이블에 따라 다른 색상
. VBA에서 변수를 사용하는 방법을 완전히 이해하지 못할 수도 있습니다. 특히 seriesArray 변수에서 오류가 발생했습니다. 어떤 도움을 주시면 감사하겠습니다. '코드'하위 color_chart()
Dim pointIterator As Integer, _
seriesArray() As Variant
seriesArray = Worksheets("Chart1").ChartObjects(1).Chart.SeriesCollection(1).Values
For pointIterator = 1 To UBound(seriesArray)
If InStr(seriesArray(pointIterator), "VA") > 0 Then
ActiveWorkbook.Sheets("Sheet1").ChartObjects(chartIterator). _
Chart.SeriesCollection(1).Points(pointIterator).Interior.Color = _
RGB(0, 255, 0)
ElseIf InStr(seriesArray(pointIterator), "NVA") > 0 Then
ActiveWorkbook.Sheets("Sheet1").ChartObjects(chartIterator). _
Chart.SeriesCollection(1).Points(pointIterator).Interior.Color = _
RGB(255, 0, 0)
Else
ActiveWorkbook.Sheets("Sheet1").ChartObjects(chartIterator). _
Chart.SeriesCollection(1).Points(pointIterator).Interior.Color = _
RGB(235, 235, 235)
End If
Next pointIterator
최종 서브 '코드'지금까지 내가 일반적으로 직면 할 때 두 가지 선택이 알고
나는 당신이 색상을, 당신의 일련의 루프 일부 VBA 코드를 작성 이름을 읽고, 변경해야 할 것 같아요. 이것은 시작하는 데 도움이 될 수 있습니다 : http://stackoverflow.com/questions/40427112/excel-vba-choosing-chart-color-based-on-series-value-comparison – Adam
당신은 분명히 여기에 어떤 VBA 마술이 필요할 것입니다. – Taosique