Name eines Diagrammes

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Name eines Diagrammes
von: Franz W.
Geschrieben am: 23.04.2005 11:17:00
Hallo Forum,
jetzt hab ich doch nochmal ne Frage zu Diagrammen: wo bitte finde ich den Namen eines Diagrammes. Mit dem ich das Diagramm in VBA ansprechen kann, z. B.
...visible = true/false

Danke im Voraus und Grüße
Franz

Bild

Betrifft: AW: Name eines Diagrammes
von: Rene
Geschrieben am: 23.04.2005 12:27:54
Hallo,
wenn Du auf das Diagramm mit der rechten Maustaste klickst und in dem Auswahlmenü dann
Diagrammfenster klickst, dann geht das Diagramm in einem neuen Fenster auf.
Dort steht dann oben in der Titelleiste der Name.
Gruß
René
Bild

Betrifft: AW: Name eines Diagrammes
von: Franz W
Geschrieben am: 23.04.2005 12:39:01
Hallo René,
danke, das hab ich gefunden. Aber da steht jetzt sowas wie "Diagramm 481" (dabei ist es das erste Diagramm in dieser Datei :-)))). Aber meine Frage: kann man diesen Namen jetzt auch ändern, würde gerne einen aussagekräftigeren Namen benutzen.

Grüße
Franz
Bild

Betrifft: AW: Name eines Diagrammes
von: Rene
Geschrieben am: 23.04.2005 13:15:40
Hallo Franz,
zunächst einmal vergibt Excel die Namen der Diagramme nach irgendeinem internen Zähler.
Also wenn du schon x Diagramme eingebaut hast (entweder in dieser Sitzung oder in dieser mappe - je nachdem ), dann hat das nächste Diagramm den Namen x+1 .
Diesen internen Namen zu ändern geht so einfach gar nicht, wie ich gerade festgestellt habe.
Allerdings fragt sich, wozu du denn einen anderen Namen vergen willst, da man den Name doch so gut wie nie sieht.
Was möchtest Du mit den Namen den anfangen?
Vielleicht kann ich dir anders helfen.
Gruß
René
Bild

Betrifft: AW: Name eines Diagrammes
von: Reinhard
Geschrieben am: 23.04.2005 13:14:15
Hallo Franz,
mit

Sub tt()
For Each Bild In ActiveSheet.Shapes
    MsgBox Bild.Name
Next Bild
End Sub

erfährst du die Namen, zb Chart 38
Mit
ActiveSheet.Shapes("Chart 38").Name = "MeinDiagramm12"
änderst du den Namen.
Ansprechen dann mit
ActiveSheet.Shapes("MeinDiagramm12").Visible = False
Gruß
Reinhard
Viele Grüße
Bild

Betrifft: AW: Name eines Diagrammes
von: Rene
Geschrieben am: 23.04.2005 13:19:18
Das ist korrekt, allerdings wollte, glaube ich Franz,
dass dann auch der interne Name (siehe Diagrammfenster),
geändert wird. Dieser name wird aber nicht geändert.
Bild

Betrifft: Codename ?
von: Reinhard
Geschrieben am: 23.04.2005 13:49:27
Hallo Rene,
aha, dann ist ggfs. der Codename gemeint, siehe nachträglichen Auszug aus der Hilfe. Aus dem Satz:
"Eine programmgesteuerte Änderung dieser Eigenschaft während der Ausführung des Programms ist nicht möglich."
schliesse ich dass man ihn zur Laufzeit nicht ändern kann.
Aber, wie krieg ich denn mit vba diesen Namen angezeigt?
Bild.Codename klappt nicht :-(
Viele Grüße
Reinhard
CodeName-Eigenschaft
Gibt den Codenamen für das Objekt zurück. String Schreibgeschützt.
Anmerkung Der Wert, der im Fenster Eigenschaften in der Zelle rechts neben (Name) angezeigt wird, ist der Codename des ausgewählten Objekts. Sie können den Codenamen eines Objekts beim Entwurf ändern, indem Sie diesen Wert ändern. Eine programmgesteuerte Änderung dieser Eigenschaft während der Ausführung des Programms ist nicht möglich.
Anmerkungen
Der Codename für ein Objekt kann an Stelle eines Ausdrucks verwendet werden, der das Objekt zurückgibt. Wenn der Codename des ersten Tabellenblatts Sheet1 lautet, stimmen die beiden folgenden Ausdrücke miteinander überein:
Worksheets(1).Range("a1")
Sheet1.Range("a1")
Der Blattname kann sich vom Codenamen unterscheiden. Beim Erstellen eines Blatts stimmen Blattname und Codename überein. Die Änderung des Blattnamens wirkt sich jedoch nicht auf den Codenamen aus, und die Änderung des Codenamens (mit Hilfe des Fensters Eigenschaften im Visual Basic-Editor) ändert nicht den Blattnamen.
Bild

Betrifft: AW: Codename ?
von: Rene
Geschrieben am: 23.04.2005 14:29:24
Hallo Reinhard,
dieser Code zeigt dir die Name alles Diagramme an, allerdings in der englischen Version
(Chart statt "Diagramm"). Kann aber sein, dass das an der Excel-Version liegt.
Versuchs einfach mal.

Sub Name()
Dim ch As ChartObject
Dim i As Integer
    For i = 1 To Worksheets.Count
        Worksheets(i).Activate
            For Each ch In ActiveSheet.ChartObjects
                MsgBox ch.Name
            Next ch
     Next i
End Sub


Gruß
René
Bild

Betrifft: AW: Codename ?
von: Nepumuk
Geschrieben am: 23.04.2005 17:30:32
Hallo René,
das kommt daher, weil du das Chartobject ansprichst. Das Chartobject ist ein Containerobjekt, welches das Chart als Objekt enthält. Wenn du an den Diagrammnamen kommen willst, musst du das entsprechende Element ansprechen.
MsgBox ch.Chart.Name
Gruß
Nepumuk
Bild

Betrifft: O T danke für die Info
von: Reinhard
Geschrieben am: 25.04.2005 22:37:21
Hallo Nepumuk,
"Das Chartobject ist ein Containerobjekt, welches das Chart als Objekt enthält"
Sowas steht ja auch in der Hilfe so, das ist für mich wie die Arrayformeln von Boris, wird noch sehr lange dauern bis ich das kapiere :-)
Viele Grüße
Reinhard
Bild

Betrifft: Danke Euch allen...
von: Franz W.
Geschrieben am: 23.04.2005 18:58:53
Hallo an alle,
(Antwort erst jetzt, war mit den Kids draußen...)
aus all dem, was Ihr hier geschrieben habt, konnte ich mir das rausziehen, was ich suchte (Diagramm ansprechen, Namen ändern, ...). In erster Linie ging es mir ums Anzeigen/Verstecken von Diagrammen. Habe mehrere gleichartige Sheets selben Aufbaus. In jedem Blatt soll ein Diagramm mehrere Wertereihen des Blattes darstellen, allerdings nur auf Knopfdruck dargestellt. Und all das konnte ich dank Eurer Hilfe umsetzen.
Nochmal danke und Grüße
Franz
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Wo stehen die Quelldaten eines Diagrammes"