Fehler in Excel 2007

26/03/2008 - 18:59 von Alfons Riemensperger | Report spam
Guten Abend,

folgender VBA-Code funktioniert nicht mit Excel 2007:

Public Sub Chart_Test()

Dim Chrt As Excel.Chart
Dim Ser As Excel.Series
Dim Dl As Excel.DataLabel

Set Chrt = Application.Charts.Item("Diagramm1")

With Chrt

For Each Ser In .SeriesCollection

Ser.HasDataLabels = True
Call Ser.ApplyDataLabels(Type:=xlDataLabelsShowValue)

For Each Dl In Ser.DataLabels

Debug.Print Now & " - " & Dl.Name & " - " & Dl.Top

Next Dl

Ser.HasDataLabels = False

Next Ser

End With

Set Chrt = Nothing

End Sub

Ich bekomme meim Aufruf der Routine mit F5 immer den Laufzeitfehler:

-2147467259 Die Methode 'Top' für das Objekt 'DataLabel' ist fehlgeschlagen

Erst nach dem Laufzeitfehler gehts im Debug-Modus ohne Problem weiter (dann
ist der Zugriff auf die Top-Eigenschaft möglich).

Dieser Programmcode klappt problemlos seit Jahren unter Excel 2002.

Zum Testen bitte in einer leeren Arbeitsmappe ein Diagrammblatt mit Namen
'Diagramm1' erzeugen, dass ein Sàulendiagramm mit einer Datenreihe und
mehreren Datenpunkten enthàlt.

Vielen Dank im Voraus.

Alfons Riemensperger
 

Lesen sie die antworten

#1 Dr. Eckehard Pfeifer
27/03/2008 - 10:53 | Warnen spam
Hallo, die Sache ist noch spannender: Wenn man den Chart aktiviert,
làuft es abwechselnd mal und mal nicht. Seltsam...
Und ein nur beschrànkt empfehlenswertes

DoEvents
Debug.Print Now & " - " & Dl.Name & " - " & Dl.Top

löst das Problem (bei aktiviertem Chart). Noch seltsamer...
Ich stimme für: Bug.
MfG EP
Entwicklung - Beratung - Training (www.dr-e-pfeifer.net)
XL-Funktionsverzeichnis (ISBN: 3860636898)
MS Office 2003 - Das Entwicklerbuch (ISBN 3-86063-688-X)

Ähnliche fragen