Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Shape mit Koordinaten einfügen



Excel-Version: 8.0 (Office 97)

Betrifft: Shape mit Koordinaten einfügen
von: Michael D
Geschrieben am: 12.06.2002 - 10:40:17

Hallo zusammen,

ich kopiere per Code ein Diagramm von einem Tabellenblatt in ein anderes.

Gibt es eine Möglichkeit beim Einfügen exakte Koordinaten anzugeben? Die Breite der Spalten auf dem betreffenden Blatt ist nämlich flexibel, das Diagramm soll aber immer an derselben Stelle eingefügt werden ...

Gruß, Michael


  

Re: Shape mit Koordinaten einfügen
von: Rainer
Geschrieben am: 12.06.2002 - 15:09:27

Lieber Michael!

Sub Diagramm_plazieren()
   With Sheets(1).Shapes("Chart")
      .Top = 20
      .Left = 20
   End With
End Sub

Hilft das?

Lieben Gruß
Rainer


  

Re: Shape mit Koordinaten einfügen
von: Michael D
Geschrieben am: 12.06.2002 - 15:20:52

Hallo Rainer,

das Dumme ist, daß ich den Namen des eingefügten Charts nicht weiß, da dieser von Excel relativ willkürlich festgelegt wird.

Obwohl das Diagramm nach dem Einfügen aktiv ist, funktioniert z.B.
...
ActiveSheet.Paste
Selection.Name = "Mein Diagramm"
...
nicht.

Wenn ich also beim Einfügen des Diagramms nicht direkt Koordinaten eingeben kann so muß ich wenigstens den Namen festlegen können ...

Hast Du da irgendwelche Ideen?

Gruß, Michael


  

Re: Shape mit Koordinaten einfügen
von: Rainer
Geschrieben am: 12.06.2002 - 15:44:38

Lieber Michael!

Noch schnell mein 1. Code, dann muss ich weg:


Sub Diagramm_plazieren()
Dim sh As Shape
With Sheets(1) 
    For Each sh In .Shapes
        'Wenn nur 1 Diagramm
        MsgBox sh.Name
        MsgBox sh.Type
        If sh.Type = 3 Then
            sh.Name = "Diagramm"
            MsgBox sh.Name
            sh.Top = 20
            sh.Left = 20
        End If
    Next sh
End With
End Sub

Das geht sicher anders, aber dies ist einmal ein Ansatz.

Lieben Gruß
Rainer

  

Re: Shape mit Koordinaten einfügen
von: Michael D
Geschrieben am: 12.06.2002 - 16:26:43

Hallo Rainer,

leider funktioniert das nicht ganz so, wie Du vorgeschlagen hast, denn es erscheint bei mir (bei der Umbenennung) "Zugriff verweigert!"

Aber ich bin mittlerweile (mit Deiner Hilfe) auf eine andere Idee gekommen. Ich möchte insgesamt zwei Spalten Diagramme einfügen und zähle jetzt über eine "For ... Each"-Schleife und einen Statusmerker einfach ab, ob das Diagramm links oder rechts platziert werden soll und sage dann einfach "Sh.Left = 200".

Danke für Deine Unterstützung.

Gruß, Michael