Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
704to708
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
704to708
704to708
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Diagramm aus variablen Datenreihen zeichnen

Diagramm aus variablen Datenreihen zeichnen
12.12.2005 13:56:47
Thias
Mahlzeit!
Ich habe mir mittels Makrorecorder untenstehende Befehlsfolge aufgenommen, um aus einer Datenreihe ein Diagramm zu erstellen. Ich hatte eigentlich gehofft, dass ich mittels der Funktion xlDown immer das Ende der Datenreihe erwische, doch leider wird das Diagramm dann mittels des "echten" Endwertes der Datenreihe gezeichnet (hier B6137).
Mein Problem: Die Datenreihe ist jedesmal unterschiedlich lang, so dass ich den Bereich .Range("B11:B6137") gerne derart variabel gestalten würde, dass jedesmal auch die korrekte Anzahl an Messwerten dargestellt wird. Denn mal kann das Ende bei 6800 liegen, mal auch schon bei 5500. Demenstprechend würden nun beim Ausführen des Makro's ja entweder zuviele oder zu wenig Daten in das Diagramm gezeichnet.
Kann mir evtl. jemand helfen, den zu zeichenenden Bereich variabel zu gestalten, so dass immer die korrekte Anzahl an Daten im Diagramm gezeichnet wird?
Gruß Thias
------------------------------------------------------------------------------

Sub KG_Diagramm()
Range("B11").Select
Range(Selection, Selection.End(xlDown)).Select
Charts.Add
ActiveChart.ChartType = xlXYScatterLinesNoMarkers
ActiveChart.SetSourceData Source:=Sheets("Rohdaten geordnet").Range( _
"B11:B6137"), PlotBy:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Rohdaten geordnet"
With ActiveChart
.HasTitle = False
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Messpkt. Nr."
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "KG Signal / mV"
End With
ActiveChart.HasLegend = False
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Diagramm aus variablen Datenreihen zeichnen
12.12.2005 13:58:56
Galenzo
über die Definition eines Namen kannst du die Datenquelle eines Diagramms auch ohne VBA dynamisch festlegen. Oder brauchst du unbedingt die Erstellung mittels VBA?
AW: Diagramm aus variablen Datenreihen zeichnen
12.12.2005 14:09:02
Thias
Hallo Galenzo,
nein - ich benötige die Erstellung nicht zwingend als VBA Script. Wenn es möglich ist, die Darstellung der x und y Datenreihen variabel zu gestalten, dann könnte ich auch das Diagramm stetst bestehen lassen, sofern sich selbiges bei neuen Daten "automatisch" anpasst.
Es wäre auch egal, ob es als eigenständiges Diagramm oder im Tabellenblatt integriert wäre. Nur leider ist mir Dein Hinweis noch nicht klar genug, wie ich das anstelle.
Anzeige
AW: Diagramm aus variablen Datenreihen zeichnen
12.12.2005 14:34:22
Thias
Ööhhm - Frage ist noch offen - hab' vergessen das Häckchen zu setzen...
AW: Diagramm aus variablen Datenreihen zeichnen
12.12.2005 14:51:41
Galenzo
hier am beispiel von Daten in Spalte A incl. Spaltenüberschrift in A1
Einfügen - Namen - Definieren (oder STRG+F3)
z.B: "DatenQuelle"
bezieht sich auf:
=BEREICH.VERSCHIEBEN($A$2;;;ANZAHL($A:$A))+JETZT()*0
Es wird hier also ein Bereich definiert, der von Zelle A2 bis runter zur letzten Zeile geht. (Das +JETZT()*0 dient zur Aktualisierung)
Datei speichern.
Als Datenquelle deiner Diagrammreihe gibst du nun an: =MeineMappe.xls!DatenQuelle
Und das war's dann auch schon. Viel Erfolg!
AW: Diagramm aus variablen Datenreihen zeichnen
12.12.2005 15:36:38
Thias
Also irgendwas klappt dabei noch nicht!
Es kommt immer die Fehlermeldung: Verweis ist ungültig!
Meine Datei habe ich unter Mappe1.xls abgespeichert und dementsprechend auch den Namen im Verweis Datenbereich geändert. Statt
=MeineMappe.xls!DatenQuelle
habe ich nun
=Mappe1.xls!DatenQuelle
geschrieben.
Habe mich ansonsten exakt an Deine Angaben gehalten... Wo kann ich denn da einen Fehler gemacht haben?
Anzeige
AW: Diagramm aus variablen Datenreihen zeichnen
13.12.2005 10:15:31
Galenzo
dann hast du wohl irgendwo einen Schreibfehler gemacht...
zur Kontrolle:
wenn du in eine zelle =DatenQuelle schreibst, dann sollte dir der erste Wert deiner Datenreihe angezeigt werden. wenn du die Formel nun mal in der Bearbeitungszeile oben (komplett von vorn bis hinten mit der Maus) markierst und F9 drückst, dann solltest du alle Werte der DatenQuelle angezeigt bekommen.
Wenn nicht hast du irgendwo einen Fehler drin..
Schau nochmal unter STRG+F3 nach, ob bei der Definition der "DatenQuelle" auch wirklich sowas drinsteht: "=BEREICH.VERSCHIEBEN(Tabelle2!$A$2;;;ANZAHL(Tabelle2!$A:$A))+JETZT()*0"
(Das "Tabelle2" fügt Excel automatisch je nach Blattname hinzu.)
In deinem Diagramm trägst du auf der Seite "Reihe" bei der Datenreihe im Feld "Werte" ein: =Mappe1.xls!DatenQuelle
(ja nach Name deiner Mappe)
Viel Erfolg!
Anzeige
AW: Diagramm aus variablen Datenreihen zeichnen
13.12.2005 10:36:25
Thias
Ahh - jetzt - ja!
Der "Trick" besteht darin, das Diagramm fertig zu erstellen und erst dann über den Rechtsklick auf Datenquelle die Eingabe =Mappe1.xls!DatenQuelle bei den Y-Werten zu machen. Und die Anführungszeichen dürfen auch nicht in der Formel stehen, gell?
Ich hatte die ganze Zeit versucht, schon bei der Erstellung des Diagramms die DatenQuelle für Datenbereich einzugeben - und das ging nicht! Jetzt funktioniert es wunderbar! Vielen Dank für Deine Geduld! Die nächste Frage kommt sogleich, soll aber nicht Dich belasten. ;-)
Gruß Thias
AW: Diagramm aus variablen Datenreihen zeichnen
13.12.2005 10:51:16
Galenzo
prima!
kein Problem - ich helfe gern weiter. Immer fragen...
WEnn es mich belasten würde, würde ich ja nicht antworten ;-)
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige