Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Namensmanager für dynamische Diagramme

Forumthread: Namensmanager für dynamische Diagramme

Namensmanager für dynamische Diagramme
31.03.2016 13:11:35
am-verzweifeln1
Hallo Zusammen,
nachdem ich schon so viel Hilfe in diesem Forum vorgefunden habe hoffe ich nun ein weiteres Mal auf eure Expertise :)
Mein Problem:
Ich habe dynamische Grafiken erstellt mit Hilfe des Namenmanagers. Wie z.b. hier beschrieben: http://www.controllingportal.de/Fachinfo/Excel-Tipps/Erzeugen-Sie-dynamische-Diagramme.html
Jetzt ist es aber so, dass ich das Sheet mit den Diagrammen mehrfach duplizieren muss.
Genau bei diesem Vorgang (Duplikation) verschwinden allerdings die eingetragenen Namen in der Datenquellenauswahl.
Jetzt habe ich versucht Testweise via Makro den Namensbereich wieder zuzuordnen. Leider scheiter ich dabei.
Hier der Test:
(OPEN = Bereich aus Namensmanager)
Ausserdem denke ich dass der entsprechende Reiter auch in den Code gehört nur komme ich durch rumprobieren nicht weiter.
Sub test_Datenbasis_diagramme()
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.Axes(xlValue).MajorGridlines.Select
ActiveChart.ChartArea.Select
ActiveChart.SeriesCollection(1).Values = "='testdatei.xls'!OPEN"
End Sub

Ich freue mich auf eure/Ihre anregungen.
Beste Grüße

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: dazu folgender Anmerkungen ...
31.03.2016 13:28:58
...
Hallo,
... ich nutze BEREICH.VERSCHIEBEN() nicht, da die Funktion volatil ist. Anstelle dessen setze ich für derartige Definitionen INDEX(). Auch arbeite ich nicht mit VBA.
Aber wie auch immer, Dein Problem ist sicherlich, dass eine benannte Formel sich bei normaler Definition stets immer auf die Tabelle bezieht wo Du die ursprüngliche Definition vorgenommen hast, also derart: =Tabelle1!... Lösche nachträglich den Tabellenbezug (ohne das "!") so dass nur noch =!... steht und Du hast damit einen Bezug der sich immer auf die jeweilige Tabelle bezieht.
Vielleicht reicht Dir das ja schon.
Gruß Werner
.. , - ...

Anzeige
AW: dazu folgender Anmerkungen ...
04.04.2016 10:39:51
am-verzweifeln1
Hallo Werner,
danke für deine Idee. Leider Wird der Tabellenblattname beim Kopieren automatisch davor gezogen.
Mit anderen Worten ich kriege es so nicht umgesetzt.
Trotzdem Danke
Gruß Fabian

AW: dem ist aber zumindest bei mir nicht so ...
04.04.2016 10:52:36
...
Hallo Fabian,
... oder Du tust etwas anderes.
Gruß Werner
.. , - ...

Anzeige
AW: Namensmanager für dynamische Diagramme
31.03.2016 13:48:06
Rudi
Hallo,
du musst die Formel der Datenreihe ändern.
Schema:
Sub aa()
Dim sF As String, sW As String
sW = ActiveSheet.Name
sF = "=SERIES('" & sW & "'!R1C2,'" & sW & "'!Datum,'" & sW & "'!Werte,1)"
ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).FormulaR1C1 = sF
End Sub
Gruß
Rudi
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Namensmanager für dynamische Diagramme in Excel


Schritt-für-Schritt-Anleitung

Um den Namensmanager in Excel für dynamische Diagramme zu nutzen, befolge diese Schritte:

  1. Namensmanager öffnen:

    • Gehe zu Formeln > Namensmanager.
  2. Neuen Namen erstellen:

    • Klicke auf Neu.
    • Vergib einen Namen, z.B. DynamischerBereich.
    • Gib als Bezug die Formel ein, die den Bereich definiert, z.B.:
      =BEREICH.VERSCHIEBEN(A1;0;0;ANZAHL(A:A);1)
  3. Diagramm erstellen:

    • Erstelle ein Diagramm und wähle die Datenquelle.
    • Nutze den Namen, den du im Namensmanager erstellt hast.
  4. Dynamisches Diagramm aktualisieren:

    • Wenn du das Diagramm kopierst, stelle sicher, dass die Datenquelle aktualisiert wird.
    • Verwende VBA, um die Formel der Datenreihe anzupassen, falls die Datenquelle nicht korrekt angezeigt wird:
      Sub UpdateChart()
      Dim sF As String, sW As String
      sW = ActiveSheet.Name
      sF = "=SERIES('" & sW & "'!R1C2,'" & sW & "'!Datum,'" & sW & "'!Werte,1)"
      ActiveSheet.ChartObjects(1).Chart.SeriesCollection(1).FormulaR1C1 = sF
      End Sub

Häufige Fehler und Lösungen

Fehler 1: Die Datenquelle für das Diagramm ist nach dem Kopieren nicht mehr korrekt.

Lösung: Stelle sicher, dass du die Formeln im Namensmanager ohne Tabellenbezug speicherst. Entferne den Tabellennamen aus der Formel, sodass sie nur auf die Werte verweist.

Fehler 2: VBA funktioniert nicht wie gewünscht.

Lösung: Überprüfe den VBA-Code auf Syntaxfehler und stelle sicher, dass die Namen der Diagramme und Tabellenblätter korrekt sind.


Alternative Methoden

Eine Alternative zur Verwendung des Excel Namensmanagers ist die Nutzung von INDEX() anstelle von BEREICH.VERSCHIEBEN(), da INDEX eine nicht volatile Funktion ist. Dies könnte die Stabilität deiner dynamischen Diagramme erhöhen.


Praktische Beispiele

Ein Beispiel für die Verwendung des Namensmanagers in dynamischen Diagrammen könnte so aussehen:

  1. Angenommen, du hast eine Tabelle mit Verkaufszahlen in Spalte A und den entsprechenden Datumsangaben in Spalte B.
  2. Erstelle einen dynamischen Namen:
    =BEREICH.VERSCHIEBEN(Tabelle1!$A$1;0;0;ANZAHL(Tabelle1!$A:$A);1)
  3. In deinem Diagramm wählst du als Datenquelle den Namen DynamischerBereich.

Tipps für Profis

  • Nutze die Namensmanager-Funktion regelmäßig, um die Übersichtlichkeit deiner Formeln zu verbessern.
  • Experimentiere mit verschiedenen Formeln, um dynamische Bereiche zu erstellen, die sich automatisch anpassen, wenn du Daten hinzufügst oder entfernst.
  • Halte deine VBA-Module sauber und dokumentiere jeden Schritt, um die Fehlersuche zu erleichtern.

FAQ: Häufige Fragen

1. Warum verschwinden meine benannten Bereiche, wenn ich das Diagramm kopiere?
Das liegt daran, dass Excel oft den Tabellennamen vor die benannten Bereiche setzt. Stelle sicher, dass du die Formeln im Namensmanager ohne Tabellenbezug speicherst.

2. Kann ich den Namensmanager auch für andere Funktionen als Diagramme verwenden?
Ja, der Namensmanager ist sehr vielseitig und kann für viele Excel-Funktionen verwendet werden, um dynamische Berechnungen und Datenanalysen zu erleichtern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige