Anzeige
Archiv - Navigation
1040to1044
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

"Name definieren" flexibel aufbauen

"Name definieren" flexibel aufbauen
22.01.2009 07:05:19
Hermann
Hallo Excel Spezialisten,
ich habe eine Arbeitsmappe erstellt mit einem Tabellenblatt als Template. Diesem Template habe ich Namen zugewiesen, die ich dazu benutze um Diagramme dynamisch an täglich aktualisierte Werte anzupassen. Der definierte Name lautet: "DIA_Datum" und bezieht sich auf "=BEREICH.VERSCHIEBEN('Status-Template'!$A$3;0;0;ANZAHL2('Status-Template'!$A$3:$A$400);1)"
Wenn ich nun diese Template-Arbeitsmappe kopiere beziehen sich alle Kopien auf die Template-Arbeitsmappe.
Hier mal eine kleine Beispieldatei: https://www.herber.de/bbs/user/58617.xls
Hat jemand eine Idee, wie ich o.g. Bezug variabel gestalten kann, so dass sich der Bezug auf die jeweilige Kopie bezieht?
Vorab schon mal vielen Dank für eure Mühe.
Gruß Hermann

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

Betreff
Datum
Anwender
Anzeige
AW: "Name definieren" flexibel aufbauen
22.01.2009 12:28:33
fcs
Hallo Herrmann,
automatisieren ist hier nicht so einfach.
Für jedes Diagramm in der Arbeitsmappe muss ja ein eigener Name jeweils für die Werte und Datum zugewiesen werden.
Diese Name muss man zunächst erzeugen und die "bezieht sich auf"-Formel entsprchend dem Namen des Tabellenblatts zugewiesen werden.
Anschließend muss für das Diagramm die Formel für die Reihe an die neuen Namne angepasst werden.
Das ist nicht ganz trivial, da man für die Namen auch eine Systematic festlegen muss, damit es keine doppelte Vergabe von Namen gibt.
Gruß
Franz
AW: "Name definieren" flexibel aufbauen
22.01.2009 13:02:00
Hermann
Hallo Franz,
danke für deine Antwort. Du schreibst, dass die Automatisierung nicht so einfach ist. Daraus schliesse ich, dass es eine Lösung geben könnte. Hast du dazu eine Idee wie soetwas umzusetzen wäre?
Im Moment behelfe ich mir tatsächlich damit, dass ich für jedes neu erzeugte Tabellenblatt einen neuen Namen definiere und das Diagramm damit verknüpfe. Es soll jedoch ein Projekt-Template entstehen, das von vielen Projektleitern benutzt werden kann, die nicht unbedingt Excel-Programmierung beherrschen.
Ich wäre für eine Lösung für eine Automatisierung wirklich sehr dankbar.
Viele Grüße
Hermann
Anzeige
AW: "Name definieren" flexibel aufbauen
22.01.2009 15:58:16
fcs
Hallo Hermann,
hier ein Makro, das die im aktiven Blatt vorhandenen Namen (Werte und Datum) -diese werden ja beim Kopieren des Blattes aus der Template-Datei mitkopiert- der Reihe(1) des Diagramms im Blatt zuweist.
Wenn man experimentiert, dann wird die Lösung plötzlich sehr einfach.
Der Code meines 1. Lösungsansatzes war 3 mal so lang und kreierte neue Namen, die dann zugewiesen wurden.
Das Makro muss in einem Modul der Datei angelegt werden, in das die Tabellenblätter kopiert werden.
Nach dem Kopieren eines Blattes aus dem Template muss das Makro ausgeführt werden.
Gruß
Franz

Sub DiagrammNeuVerknuepfen()
Dim wksAktiv As Worksheet
Dim objDiagramm As Chart, objReihe As Series
Dim strDatumNeu As String, strWerteNeu As String
Const strWerte As String = "Werte" 'Name für Wertebereich im Template
Const strDatum As String = "Datum" 'Name für Datumsbereich im Template
Const strReihe As String = "B8" 'Zell-Addresse für Namen der Reihe
On Error GoTo Fehler
Set wksAktiv = ActiveSheet
Set objDiagramm = wksAktiv.ChartObjects(1).Chart 'Eingebettetes Diagramm
'Neue Namen ermitteln
strDatumNeu = "'" & wksAktiv.Name & "'!" & strDatum
strWerteNeu = "'" & wksAktiv.Name & "'!" & strWerte
'Namen der Datenreihe im Diagramm zuweisen
With objDiagramm
Set objReihe = .SeriesCollection(1)
objReihe.Formula = "=SERIES(""" & wksAktiv.Range(strReihe).Text & """," _
& strWerteNeu & "," & strDatumNeu & ",1)"
End With
Fehler:
With Err
If .Number  0 Then
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End If
End With
End Sub


Anzeige
AW: "Name definieren" flexibel aufbauen
22.01.2009 16:22:07
Hermann
Hallo Franz,
ich bin begeistert. Vielen Herzlichen Dank.
Schönen Gruß
Hermann

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige