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

Forumthread: Diagramm als Grafik kopieren

Diagramm als Grafik kopieren
07.11.2019 12:25:56
HPG
Hallo,
ich möchte in einem Makro ein Diagramm als Grafik in ein anderes Arbeitsblatt kopieren und danach noch ein kleines bißchen die Größe anpassen. Mit dem Makrorecorder habe ich das so aufgezeichnet:
ActiveChart.ChartArea.Copy
Sheets("alle Betriebszustände").Select
Range("E8").Select
ActiveSheet.Pictures.Paste.Select
Selection.ShapeRange.ScaleHeight 1.5, msoFalse, msoScaleFromTopLeft
und es funktioniert auch. Jetzt weiß ich ja mittlerweile, daß man Select vermeiden soll und habe deshalb das hier:
ActiveChart.ChartArea.Copy
Sheets("alle Betriebszustände").Range("E8").Pictures.Paste.Select
Selection.ShapeRange.ScaleHeight 1.5, msoFalse, msoScaleFromTopLeft
ausprobiert, was aber nicht funkti0oniert. Woran liegt denn das?
Schöne Grüße
Hanns
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Archivsuche mit Betreff=>1 Treffer=Lösung! (owT)
07.11.2019 13:14:45
EtoPHG

AW: Diagramm als Grafik kopieren
07.11.2019 13:20:08
fcs
Hallo Hans,
manchmal ist der Weg via Select/Selection tatsächlich einfacher. Insbesondere wenn man die korrekten Objekte mit ihren Methoden und Eigenschaften noch nicht so genau kennt.
Ohne Select kann dein Makro vie folgt aussehen.
LG
Franz
Sub Copy_Diagramm_Grafik_2()
Dim wksZiel As Worksheet
Dim objSh As Shape
ActiveChart.ChartArea.Copy
Set wksZiel = ActiveWorkbook.Worksheets("alle Betriebszustände")
'Bild auf Zielblatt einfügen
With wksZiel
.Pictures.Paste
Set objSh = .Shapes(.Shapes.Count)
End With
'eingefügtes Bild positionieren und skalieren
With objSh
.Top = wksZiel.Range("E8").Top
.Left = wksZiel.Range("E8").Left
.ScaleHeight 1.5, msoFalse, msoScaleFromTopLeft
End With
End Sub

Anzeige
AW: Diagramm als Grafik kopieren
07.11.2019 13:20:47
fcs
Hallo Hans,
manchmal ist der Weg via Select/Selection tatsächlich einfacher. Insbesondere wenn man die korrekten Objekte mit ihren Methoden und Eigenschaften noch nicht so genau kennt.
Ohne Select kann dein Makro vie folgt aussehen.
LG
Franz
Sub Copy_Diagramm_Grafik_2()
Dim wksZiel As Worksheet
Dim objSh As Shape
ActiveChart.ChartArea.Copy
Set wksZiel = ActiveWorkbook.Worksheets("alle Betriebszustände")
'Bild auf Zielblatt einfügen
With wksZiel
.Pictures.Paste
Set objSh = .Shapes(.Shapes.Count)
End With
'eingefügtes Bild positionieren und skalieren
With objSh
.Top = wksZiel.Range("E8").Top
.Left = wksZiel.Range("E8").Left
.ScaleHeight 1.5, msoFalse, msoScaleFromTopLeft
End With
End Sub

Anzeige
AW: Diagramm als Grafik kopieren
07.11.2019 13:26:29
HPG
Danke für Deine Antwort, aber da scheint mir die Select-Variante tatsächlich einfacher zu sein.
Schönen Gruß
wie gesagt... Archivsuche
07.11.2019 15:33:07
EtoPHG
mit deinem Betreff, Hans
Lösung im ersten Suchtreffer (von NoNet) angepasst auf Deine Gegebenheiten:
Sub DiagrammAlsBildopieren()
Worksheets("Betriebszustände").ChartObjects("Diagramm 1").CopyPicture
With ActiveSheet
.Cells(8, 5).Activate
.Paste
End With
End Sub

Gruess Hansueli
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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