Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1684to1688
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

Datenbereich Diagramm, Feste Wert & Zelleintrag

Datenbereich Diagramm, Feste Wert & Zelleintrag
02.04.2019 14:19:57
Martin
Hallo zusammen,
mittels VBA setze ich aktuell den Datenbereich eines Diagramms wie folgt:
With Worksheets("Tabelle1").ChartObjects(1).Chart
.SeriesCollection(1).XValues = "=Tabelle1!$F$5:$F$6"
.SeriesCollection(1).Values = "=Tabelle1!$H$5:$H$6"
End With
Nun würde ich diesen Datenbereich gerne um die beiden folgenden Punkte erweitern:
P1: x1 / y1
P2: x2 / y2
Beide dieser Punkte stehen in keiner Zelle des Tabellenblatts (und sollen es auch nicht).
P1 soll vor die Auflistung F5:H6 und P2 soll am Ende angehängt werden.
Hat jemand eine Idee, ob das überhaupt möglich ist? Wenn ja, wie?
Viele Grüße
Martin

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Dazu muss dein Diagramm...
02.04.2019 14:46:18
Beverly
Hi Martin,
entweder 1 oder 2 weitere Datenreihen beinhalten - je nachdem ob sie zu einer gemeinsamen oder zu getrennten Datenreihen gehören sollen. Auch hängt es davon ab, ob die Punkte bereits als Datenreihe(n) im Diagramm vorhanden sind oder nicht.
Angenommen, beide Punkte sollen zu einer gemeinsamen Datenreihe gehören, welche noch nicht im Diagramm vorhanden ist - dann nach diesem Prinzip:
        With .SeriesCollection.NewSeries
.XValues = "={5;1}"
.Values = "={1;8}"
End With

Falls es 2 getrennte Datenreihen sein sollen, dann nach diesem Prinzip:
        With .SeriesCollection.NewSeries
.XValues = "={1}"
.Values = "={8}"
End With
With .SeriesCollection.NewSeries
.XValues = "={5}"
.Values = "={1}"
End With

Sollten die Punkte bereits als Datenreihe(n) angelegt sein, dann einfach With .SeriesCollection.NewSeries durch With .SeriesCollection(2) bzw. With .SeriesCollection(3) im Code ersetzen.
Ob du die Datenreihen vor der bereits vorhandenen oder nach der vorhandenen Datenreihe bearbeitest spielt keine Rolle.
X- und Y-Werte musst du selbstverständlich anpassen.
Beachte bitte künftig, dass du das Problem - respektive die vorhandenen Bedingungen - detailliert beschreiben solltest.


Anzeige
AW: Dazu muss dein Diagramm...
02.04.2019 15:15:26
Martin
Hallo Karin,
sorry, da habe ich mich wohl tatsächlich etwas falsch ausgedrückt.
Ich möchte gerne in einer SeriesCollection sowohl feste Werte (P1 und P2) als auch Daten aus dem Tabellenblatt berücksichtigen.
Vom Prinzip sollte der Datenbereich der SeriesCollection(1) dann so aussehen:
    x    |   y
0    |   0     (P1)
ZelleA1  | ZelleB1
ZelleA2  | ZelleB2
ZelleA3  | ZelleB3
0    |   0     (P2)
Hintergrund: Ich möchte die Linie, welche durch die Tabellenwerte gebildet wird, gerne mit dem Nullpunkt im Diagramm verbinden. Allerdings kann ich die Punkte P1(0|0) und P2(0|0) nicht im das Tabellenblatt schreiben.
Ich hoffe, dass es jetzt etwas verständlicher ist.
Viele Grüße
Martin
Anzeige
Einen Zellbreich + fixe Werte...
02.04.2019 15:55:22
Beverly
Hi Martin,
...in einer Datenreihe geht nicht, nur entweder - oder.
Du kannst dann nur alle Werte, also sowohl die 0- als auch die Werte in den Zellen, in ein Array schreiben und dieses Array dann der Datenreihe zuweisen:
    Dim arrXWerte
Dim arrYWerte
ReDim arrXWerte(0 To 4)
ReDim arrYWerte(0 To 4)
arrXWerte(0) = 0
arrYWerte(0) = 0
Dim intZaehler As Integer
For intZaehler = 1 To 3
arrXWerte(intZaehler) = Cells(intZaehler, 1)
arrYWerte(intZaehler) = Cells(intZaehler, 2)
Next intZaehler
arrXWerte(4) = 0
arrYWerte(4) = 0
With ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1)
.XValues = arrXWerte
.Values = arrYWerte
End With
Dein Punkt 2 ist also nicht Punkt 2 (der Datenreihe) sondern Punkt 5 und die Werte aus den Zellen sind Punkt 2 bis Punkt 4 (der Datenreihe).


Anzeige
AW: Einen Zellbreich + fixe Werte...
02.04.2019 16:23:22
Martin
Hallo Karin,
ja, ich hatte mir schon gedacht, dass das vielleicht nicht funktioniert.
Vielen Dank für Deinen Alternativ-Ansatz. Ich werde es mal ausprobieren.
Viele Grüße
Martin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige