Sehr geehrte VBA-Anhängerinnen, ich bin nun seit einigen Wochen an einem Thema, dass ich so gut wie mir möglich versucht habe zu lösen. Es handelt sich um den Laufzeitfehler 13 (Typen unverträglich) bei der Verarbeitung von Charts in VBA. Genauer handelt es sich um die Zuweisung der XValues zu einem Chartobject. Die Felder, die beim ersten Schleifendurchlauf angesprochen werden, haben den Wert 1.
´ Beim 1. Durchlauf kommt man direkt zu der Stelle, die den Fehler erzeugt.
'signalLegende() - Gibt die Namen für die Legende wieder
'zellen() - Gibt die Positionen der auszulesenden Zellen wieder
With Worksheets(ActiveSheet.name)
For i = 1 To anzahlTabellen
For j = 1 To anzahlSignale(i)
Select Case nurZeitOderNurWert(j, i)
Case 0
If (signalLegende(j, 2, i) <> "U" And signalLegende(j, 2, i) <> "u") Then
If (Not ysnDiagrammtypLinien) Then
'-----------------------------------------------------------------------------------------------------------------------------
Fehler
.ChartObjects(1).Chart.SeriesCollection(signalLegende(j, 1, i)).XValues = _
.Range(.Cells(zellen(j, 1, i), zellen(j, 2, i)), _
.Cells(zellen(j, 1, i), zellen(j, 2, i)))
'----------------------------------------------------------------------------------------------------------------------------
Else
.ChartObjects(1).Chart.SeriesCollection(signalLegende(j, 1, i)).XValues = _
.Range(.Cells(zellen(1, 1, i), zellen(1, 2, i)), _
.Cells(zellen(1, 1, i), zellen(1, 2, i)))
End If
.ChartObjects(1).Chart.SeriesCollection(signalLegende(j, 1, i)).Values = _
.Range(.Cells(zellen(j, 1, i), zellen(j, 2, i) + 1), _
.Cells(zellen(j, 1, i), zellen(j, 2, i) + 1))
End If
Case 2
.ChartObjects(1).Chart.SeriesCollection(signalLegende(j, 1, i)).XValues = _
.Range(.Cells(zellen(1, 1, i), zellen(1, 2, i)), _
.Cells(zellen(1, 1, i), zellen(1, 2, i)))
.ChartObjects(1).Chart.SeriesCollection(signalLegende(j, 1, i)).Values = _
.Range(.Cells(zellen(j, 1, i), zellen(j, 2, i)), _
.Cells(zellen(j, 1, i), zellen(j, 2, i)))
Case Else
End Select
Next j
Next i
Es wäre wunderbar, wenn ihr mir helfen könntet. Liebe Grüße Sebastian
|