私は積み重なった棒グラフの上に要素のタイミングを積み重ねることによってジョブの要素を表示するExcelで山津チャートを作成しようとしています。私は、今得ている色の虹の代わりに、ラベルに基づいて要素を色づけできるようにしたい。たとえば、VAがあるときは、VAのすべての要素をグラフで緑色にしたいと思います。これはExcelのデータの例です。Excelスタックバーチャートラベリングに基づいて異なる色
徒歩負荷カートNVA 6.35 Excel Data
私はこのVBAコードを試してみましたが、動作するようには思えません。私は、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
End Subの 'コード' 私の知る限り、一般的に、このに直面したとき、あなたは2つの選択肢があります知っているよう
私は、あなたが、あなたの一連のループにいくつかのVBAコードを書くの名前を読んで、色を変更する必要があるとしていると思います。これはあなたが始めるのを助けるかもしれません:http://stackoverflow.com/questions/40427112/excel-vba-choosing-chart-color-based-on-series-value-comparison – Adam
あなたは間違いなくここでいくつかのVBAの魔法が必要になります。 – Taosique