Das grosse Archiv mit 636
VBA-freien Formellösungen und Tips
 
   
 
 ÜBER UNS   NEWS   FORMELN   TIPPS   KONTAKT   FORUM   LINKS 
   
 
Diagramme (1) ->

Datenbereich eines Diagramms dynamisieren

Autor: Klaus Kühnlein
 
 
Aufgabe
Es gibt Situationen, in denen der Wertebereich eines Diagrammes nicht fix, sondern veränderbar sein soll.
Häufiger Anwendungsfall: Neu angehängte Werte sollen im Diagramm mitgezeichnet werden.

Um dann nicht immer in den Diagrammoptionen oder per Bereichsmarkierung den Datenbereich manuell ändern zu müssen, kann man Namen verwenden.
Der Datenbereich eines Diagramms erlaubt zwar keine Formeln, aber Namen

Z.B.
=DATENREIHE("y = f(x)";Polynom.xlsx!x;Polynom.xlsx!y;1)

Wichtig:
Vor dem eigentlichen Namen muß der Dateiname angegeben werden. Wenn die Datei bereits abgespeichert ist, dann mit Endung .xlsx. Ist sie noch nicht abgespeichert, dann ohne Endung, also z.B. Mappe1!x
Lösung
Diagramm-Anzeigebereich variabel halten
Wähle einfügen> Namen> festlegen / in neuen Versionen: Formeln > Namen definieren
Name:x
bezieht sich auf:
=BEREICH.VERSCHIEBEN(Ursprung; VersatzNachUnten; VersatzNachRechts; Höhe, Breite)

Hinweis zum Anwendungsfall (s.o): Hier ist nur die Höhe variabel zu halten, zB. durch Verweis auf eine Zelle, welche die Anzahl der Werte zählt (=ANZAHL)

Das gleiche für den Namen Y definieren.

Die Parameter Ursprung;VersatzNachUnten;VersatzNachRechts;Höhe;Breite
werden mit beliebigen Zellen verknüpft, die dann jederzeit geändert werden können.


ALTERNATIVE: Nur markierte Daten anzeigen

Eine Dynamisierung der Namen x oder y kann auch dadurch erreicht werden, dass statt der Funktion BEREICH.VERSCHIEBEN relative Bezüge verwendet werden.

Beispiel:

Angenommen, Du hast in einer Liste mehrere Datenreihen. Pro Zeile eine Datenreihe. Von Spalte A:X. Im Diagramm soll die Datenreihe angezeigt werden, in der sich die aktive Zelle befindet.

Aktiviere A1. Vergebe den Namen Y
bezieht sich auf: =Tabelle1!$A1:$X1
Setze den Term Dateiname.xlsx!y in die Funktion DATENREIHE an die Stelle der y-Koordinaten.

Y ist jetzt also immer Spalte A:X der selektierten, also aktiven Zeile.
Y passt sich also an den aktiven Datensatz an.

Beachte, daß nach dem Wechseln der aktiven Zelle eine Neuberechnung erfolgen muß.
Diese kann durch Drücken von STRG+ALT+F9 ausgelöst werden.
Oder man hängt an den Bezug +jetzt()*0, dann genügt das normale F9.
Oder man schreibt in das Tabellenmodul die klitzekleine Ereignisprozedur:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Application.SendKeys "^%{F9}"
End Sub

Erläuterung
Übrigens, wenn sich ein Datenbereich auf eine Spalte bezieht, die ausgeblendet wird, verschwindet normalerweise auch das Diagramm. Auch das
läßt sich über die Namensvergabe beheben:
Angenommen der Datenbereich eines Diagrammes steht in A1:A10.
Vergibt man einen Namen für
A1:A10*1 kann der Namen im Diagramm verwendet werden und das ausblenden der Spalte macht nichts mehr aus.

Das Problem ausgeblendeter Spalten kann man auch einfacher beheben (ManuelaM):
Diagramm markieren, dann
Extras>Optionen...>Diagramm
und den Haken bei 'nur sichtbare Zellen werden gezeichnet' wegnehmen.
 
    zurück


 
powered by telltarget