PDA

Vollständige Version anzeigen : Fehler beim Diagrammerstellen


tmotion
16.03.2009, 10:21
Hi Diddelido "

Starte ich mein Makro bekomme ich neuerdings folgende Fehlermeldung:
"Laufzeitfehler '1004':
Die Methode 'SeriesCollection' f+r das Object '_Chart' ist fehlgeschlagen"

Kann mir jemand genauer erklären, was es damit auf sich hat ?
Leider ist dies irgendwann (nicht durch mich) per Makro aufgezeichnet worden, daher kennt vielleicht noch Jemand eine Anleitung noch dazu?
Bin am verzweifeln.
Vielen Dank im Vorraus:
Timo


Mein Quellcode:


' IV logarithmisch zeichnen
ActiveWindow.Visible = False
Range("A20").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterLinesNoMarkers
ActiveChart.SetSourceData Source:=Sheets("IVL Graphiken").Range("D18")
ActiveChart.SeriesCollection(1).XValues = "=Master!R3C2:R153C2"
ActiveChart.SeriesCollection(1).Values = "=Master!R3C4:R153C4"
ActiveChart.SeriesCollection(1).Name = "=Master!R3C1"
ActiveChart.Location Where:=xlLocationAsObject, Name:="IVL Graphiken"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "log(i)V charakteristik"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Spannung [V]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "log(I) [A]"
End With

Nepumuk
16.03.2009, 11:26
Hallo,

kaum macht man's richtig, schon funktionierts. :grins:

<nobr><span style="font-family:Courier New,Arial; font-size:9pt ;" ><b><span style="color:#000080"; >Public</span> <span style="color:#000080"; >Sub</span> test()</b><br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >Dim</span> objChart <span style="color:#000080"; >As</span> Chart, objSeries <span style="color:#000080"; >As</span> Series<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >Set</span> objChart = Charts.Add<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >With</span> objChart<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.ChartType = xlXYScatterLinesNoMarkers<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >Set</span> objSeries = .SeriesCollection.NewSeries<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >With</span> objSeries<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Name = <span style="color:#800000"; >"=Master!R3C1"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.XValues = <span style="color:#800000"; >"=Master!R3C2:R153C2"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Values = <span style="color:#800000"; >"=Master!R3C4:R153C4"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >End</span> <span style="color:#000080"; >With</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.ChartTitle.Characters.Text = <span style="color:#800000"; >"log(i)V charakteristik"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Axes(xlCategory, xlPrimary).HasTitle = <span style="color:#000080"; >True</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = <span style="color:#800000"; >"Spannung [V]"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Axes(xlValue, xlPrimary).HasTitle = <span style="color:#000080"; >True</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = <span style="color:#800000"; >"log(I) [A]"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.Location Where:=xlLocationAsObject, Name:=<span style="color:#800000"; >"IVL Graphiken"</span><br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >End</span> <span style="color:#000080"; >With</span><br /><b><span style="color:#000080"; >End</span> <span style="color:#000080"; >Sub</span></b><br /></span></nobr>

tmotion
16.03.2009, 11:42
Vielen Dank für die Hilfe!!!

Nepumuk
16.03.2009, 11:48
Hallo Timo,

C4 steht für "Column 4" und die 4. Spalte ist D.

tmotion
16.03.2009, 12:02
Danke, im letzten Moment war es mir dann auch aufgefallen.
Ich hatte eben deinen Code kopiert und es hat geklappt... Nun macht er wieder einen Fehler, warum auch immer, hab nicht wirklich was wichtiges verändert:

Es wird ein neues Tabellenblatt und das Diagramm im Größtformat erstellt
und in der Zeile:
.ChartTitle.Characters.Text = "log(i)V charakteristik"
erscheint dann der Error mit der Fehlermeldung:
Laufzeitfehler '1004': Die Characters-Eigenschaft des ChartTitle-Objektes kann nicht zugeordnet werden...

Ich denke mal, dass es daran liegt, dass das Diagramm noch nicht in dem richtigem Sheet liegt ?
Gruß
Timo

Nepumuk
16.03.2009, 12:33
Hallo Timo,

nee. Wohl eher daran, dass keine Daten da sind und desswegen auch keine Achse erstellt werden kann. Aber ohne die Mappe kann ich auch nur vermuten.

tmotion
16.03.2009, 12:40
Wenn ich die Zeile lösche:
.ChartTitle.Characters.Text = "log(i)V charakteristik"
funktioniert es. Allerdings hab ich dann keine Diagrammbeschreibung. Außerdem findet er in diesem Diagramm dann 2 unterschiedliche Wertelinien(blau und rosa), wie auf dem Screenshot in der Anlage zu sehen. Wie krieg ich den weg, so dass er nur "6a" anzeigt ?
Sorry, für das nachhaken, aber du hilfst mir gut Nepumuk :)
Timo

Nepumuk
16.03.2009, 13:07
Hallo Timo,

kannst du die Mappe mal hochladen?

tmotion
16.03.2009, 13:45
Hallo Nepumuk,

jetzt geht wieder alles komischerweise. Sollte es nochmal auftreten, schreib ich Dir eine PM und verlinke meine Exceldatei. Leider bin ich auf der Arbeit und hab hier nicht meinen FTP Zugang zum hochladen. Soweit vielen Dank. Du hast mir wirklich sehr geholfen, auch wenn ich noch viel mehr fragen hätte (Logarithmische Darstellung, Mehrere Graphen in ein Diagramm usw). Aber für's Erste versuche ich selber klarzukommen. :-)
Gruß,
Timo