Microsoft Excel

Herbers Excel/VBA-Archiv

Position von Diagramm-Objekten übertragen

Betrifft: Position von Diagramm-Objekten übertragen von: Wolfango
Geschrieben am: 29.07.2014 17:07:56

Hallo Experten,

in einem Excel Diagramm habe ich einen Diagrammtitel sowie 3 manuell eingefügte Grafikobjekte (Logo, etc.). Alle 4 Objekte habe ich manuell (mit der Maus) positioniert.
Nun möchte ich exakt diese Positionierung in 30 weitere Diagramme übernehmen/übertragen. Ich finde aber nirgendwo eine Stelle wo ich die exakte Positionierung auslesen bzw. auch einstellen kann.

Finde ich diese nur nicht oder gibt es einen anderen Weg dies zu tun?

Danke schomma!!
Wo

  

Betrifft: AW: Position von Diagramm-Objekten übertragen von: Nepumuk
Geschrieben am: 29.07.2014 18:34:25

Hallo,

bevor ich x-mal nachfrage, ist es dir möglich eine Mustermappe hochzuladen? Ich brauch nur ein Diagramm mit den entsprechenden Shapes darauf. Sind diese Shapes auf den anderen Diagrammen schon drauf oder sind die noch "nackich" ?

Gruß
Nepumuk


  

Betrifft: AW: Position von Diagramm-Objekten übertragen von: Wolfango
Geschrieben am: 30.07.2014 13:42:48

...habe mal eine Demo-Mappe hochgeladen:
https://www.herber.de/bbs/user/91789.xlsx

Es geht um:
1. den (blauen) Diagrammtitel
2. die (blaue ) Grafik rechts oben
3. die graue Linie unter beiden Objekten

Alle drei Dinge kann ich via copy/paste in andere Diagramme übertragen.
ABER: dort erhalten sie nach dem "Einfügen" leider eine leicht andere Position.
Und die Ursprungsposition lässt sich nirgendwo auslesen oder einstellen.
Ich muss alle 3 Dinge exakt in andere Diagramme übertragen mit exakt der gleichen Position (mehrere hundert Diagramme inzwischen; Kopien eines fertigen Diagramms zu erstellen und die Daten zu ändern scheidet aus).

Danke!


  

Betrifft: AW: Position von Diagramm-Objekten übertragen von: Rudi Maintaire
Geschrieben am: 30.07.2014 15:42:05

Hallo,
für das Muster:

Sub aaaa()
  Dim cht As Chart
  Dim shp As Object
  For Each cht In Charts
    For Each shp In cht.Shapes
      Select Case shp.AutoShapeType
        Case -2: shp.Top = 40: shp.Left = 15  'Linie
        Case 5: shp.Top = 1: shp.Left = 560   'Rechteck
      End Select
    Next shp
    With cht.ChartTitle   'Titel
      .Top = 3
      .Left = 25
    End With
  Next cht
End Sub

Gruß
Rudi


  

Betrifft: AW: Position von Diagramm-Objekten übertragen von: Wolfango
Geschrieben am: 01.08.2014 11:21:45

Vielen Dank! Funktioniert ausgezeichnet!

Eine Rückfrage hat sich noch ergeben:
Wenn ich jetzt z.B. noch ein Firmenloge hinzukommt, wie muss ich dann den Code erweitern?
Ich vermute ich muss unter die Zeilen

Select Case shp.AutoShapeType
Case -2: shp.Top = 40: shp.Left = 15 'Linie
Case 5: shp.Top = 1: shp.Left = 560 'Rechteck

noch eine weiter Zeile setzen, richtig?
Wie muss diese dann lauten?

Vielen Dank und Gruß, Wo


 

Beiträge aus den Excel-Beispielen zum Thema "Position von Diagramm-Objekten übertragen"