Ho alcuni grafici in cui i valori X sono testo e Y valori sono numerici. Voglio colorare ogni barra rossa se il valore Y per la barra è minore di zero, verde se maggiore o uguale a zero. Inoltre, se il valore X della barra è "NET CHANGE", ho bisogno che la barra sia gialla. Ho seguito le istruzioni in un thread StackOverflow precedente qui: Changing Bar colors using VBA based on category label.excel vba cambiando il colore del grafico a barre per un punto dati basato sul valore punto
Sto ricevendo l'errore di run-time 451 La procedura di proprietà di lasciare non definita e la procedura di acquisizione delle proprietà non ha restituito un oggetto.
Il mio codice è qui sotto:
For chartIterator = 1 To ActiveSheet.ChartObjects.count
For pointIterator = 1 To ActiveWorkbook.Sheets("Sheet1").ChartObjects(chartIterator).Chart.SeriesCollection(1).Points.count
If ActiveWorkbook.Sheets("Sheet1").ChartObjects(chartIterator).Chart.SeriesCollection(1).Values(pointIterator) >= 0 Then
ActiveWorkbook.Sheets("Sheet1").ChartObjects(chartIterator).Chart.SeriesCollection(1).Points(pointIterator).Interior.Color = _
RGB(146, 208, 80)
Else
ActiveWorkbook.Sheets("Due To Chart").ChartObjects(chartIterator).Chart.SeriesCollection(1).Points(pointIterator).Interior.Color = _
RGB(255, 0, 0)
End If
Next pointIterator
Next chartIterator
L'errore arriva fino al l'istruzione IF. Ho anche provato. Punti (pointIterator) .Value, che mi ha procurato un errore "proprietà o metodo non definito per questo oggetto".
Qualche idea su cosa sto facendo male?
Grazie in anticipo per il vostro aiuto.
questo ha funzionato perfettamente, grazie! – user1899231