Bereich einer Datenreihe via Zellen angeben
#11
Hallo k...,


".FullSeriesCollection" gibt es erst ab Excel 2013.

Solange du keine Spalten, die Diagrammreihen enthalten, ausblendest, arbeitet ".SeriesCollection" identisch.
Ansonsten kann sich der Index einer Datenreihe ändern.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#12
Ok bestens, vielen Dank :28: :28:
Top
#13
Habe doch noch ne kurze Frage dazu:
Jetzt wird bei jeder Änderung auf dem worksheet der Code abgearbeitet.
Wie kann ich es optimieren, dass es nur bei einer Änderung des Bereichs Liste die Funktion ausführt?
Top
#14
Hallo k...

das Ereignismakro "Worksheet_Change" wird zwar bei jeder Änderung im Blatt aufgerufen, aber durch die IF-Bedingung wird das Diagramm nur angepasst, wenn ein Wert der "Liste" geändert wurde.
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#15
Ach ja richtig :28: schönes WE
Top
#16
Hallo,
ich möchte gerne die bisherige Lösung erweitern.
Und zwar gibt es mehrere charts und die dazugerhörigen Definitionen für jeden chart sind in Spalten aufgeführt.
D.h. ich vergebe für jeden Chart einen eigenen Namen (z.B. a5...a10 Name chart1 und b5...b10 chart2....).
Jetzt müsste ich bei einer Änderung eines Wertes in einem Bereich dies erkennen und dann das richtige chart ansprechen.

Desweiteren liegen die charts nicht im akutellen worksheet, sonder in einem extre sheet "chart", d.h. mehrere charts in einem.
Dies konnte ich bisher so lösen:

Code:
With Sheets("chart").ChartObjects("chart1").Chart.SeriesCollection.Item(1)

Wie könnte ich dies elegant lösen, damit ich lediglich den Bereich erkenne in dem sich etwas ändert und dann das entsprechende chart anspreche?
Top
#17
Hallo k...

du kannst den benannten Bereich um drei Zeilen erweitern (Blattname, Diagrammname und Reihennummer).
Das neue Makro passt nur die Datenreihe für das Diagramm aus der Spalte an, in der die Änderung durchgeführt wurde.


Angehängte Dateien
.xlsm   TestDiagramm.xlsm (Größe: 31,11 KB / Downloads: 1)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





Top
#18
Besten Dank, werde versuchen es auf meine Bedürfnisse weiter anzupassen :97:
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste