Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1380to1384
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datalabels suchen und einfärben

Datalabels suchen und einfärben
29.09.2014 18:29:49
Chris
Hallo Liebe Forumsmitglieder,
ich habe mal wieder ein kleines Problem. Ich möchte mit meinem Sub bestimmte Werte aus einem Punktdiagramm automatisch einfärben. Die Werte nimmt er sich aus einer Zelle im Tabellenblatt.
Er wirft momentan den Fehler "424 Objekt erforderlich". Ich dachte ich hätte alles richtig deklariert und kann es mir nicht erklären.
Die nächste Frage wäre dann ob der Code das tut was er soll. Die Werte aus dem Punktdiagramm bestehen zwar aus 2 Datenreihen aber eigentlich bestimme ich den zu markierenden Punkt nur über eine Datenreihe. Aber das macht wahrscheinlich nichts wenn ich beide abfrage...
Im Code seht ihr die Schleife für einen Wert (t1)
Würde mich freuen wenn ihr mir weiterhelfen könntet. Schönen Abend und beste Grüße
Chris
'set color for Top 3 and Worst 3 in the Matrix
Dim t1              As Object
Dim t2              As Object
Dim t3              As Object
Dim w1              As Object
Dim w2              As Object
Dim w3              As Object
Dim h               As Variant
Dim g               As Variant
Set t1 = Worksheets("DQI Comparison").Range("O4").Value
Set t2 = Worksheets("DQI Comparison").Range("O5").Value
Set t3 = Worksheets("DQI Comparison").Range("06").Value
Set w1 = Worksheets("DQI Comparison").Range("O12").Value
Set w2 = Worksheets("DQI Comparison").Range("O13").Value
Set w3 = Worksheets("DQI Comparison").Range("O14").Value
For h = 1 To ActiveChart.SeriesCollection.Count
For g = 1 To ActiveChart.SeriesCollection(h).Points.Count
If ActiveChart.SeriesCollection(h).Points(g).Values = t1 Then
ActiveChart.SeriesCollection(h).Points(g).datalable.FillFormat.ForeColor = RGB( _
255, 51, 0)
End If
Next g
Next h

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datalabels suchen und einfärben
30.09.2014 14:18:50
fcs
Hallo Chris,
außer den Schleifen selber passt nur wenig zusammen.
1. Variablen, denen Werte zugewiesen werden dürfen nicht als Object deklariert werden.
2. Mit Set werden keine Werte sondern Objekte einer Variablen zugewiesen.
3. Points haben keine Values-Eigenschaft. Der Wert muss über die Values der Datenreihe ermittelt werden.
4. Die Syntax für die Füllfarbe der Datenbeschriftung ist nicht korrekt.
Wichtig: die Beschriftungen müssen schon angezeigt werden, bevor man ihre Eigenschaft ändern kann.
5. Du hattest bei Range("O5") "05" statt "O5" geschrieben.
Es ist hilfreich, Variablen vom passen Typ zu deklarieren, um dann die passenden Methoden und Eigenschaften anzuwenden/zuzuweisen. Der VBA-Editor hilft dann bei der Auswahl, wenn der Punkt geschrieben wird - speziell bei Diagrammen und Pivotberichten, die eine sehr komplexe Objektstruktur haben.
Gruß
Franz
Sub aatest()
'set color for Top 3 and Worst 3 in the Matrix
Dim t1              As Variant
Dim t2              As Variant
Dim t3              As Variant
Dim w1              As Variant
Dim w2              As Variant
Dim w3              As Variant
Dim h               As Long
Dim g               As Long
Dim objPoint As Point 'Object
Dim objReihe As Series 'Object
t1 = Worksheets("DQI Comparison").Range("O4").Value
t2 = Worksheets("DQI Comparison").Range("O5").Value
t3 = Worksheets("DQI Comparison").Range("O6").Value
w1 = Worksheets("DQI Comparison").Range("O12").Value
w2 = Worksheets("DQI Comparison").Range("O13").Value
w3 = Worksheets("DQI Comparison").Range("O14").Value
For h = 1 To ActiveChart.SeriesCollection.Count
Set objReihe = ActiveChart.SeriesCollection(h)
For g = 1 To objReihe.Points.Count
Set objPoint = objReihe.Points(g)
If objReihe.Values(g) = t1 Then
objPoint.DataLabel.Format.Fill.ForeColor.RGB = RGB(255, 51, 0)
End If
Next g
Next h
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige