Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1748to1752
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

Diagramm per Makro kopieren

Diagramm per Makro kopieren
01.04.2020 13:33:19
T
Hallo,
ich möchte gern ein Diagramm per Makro kopieren. Das Diagramm liegt so in meinem Arbeitsblatt, dass ich es nicht sehen kann (außer ich scrolle an die entsprechende Stelle), es ist aber nicht ausgeblendet oder so.
Wenn ich das Makro starte, bekomme ich eine Fehlermeldung. Wenn man vorher auch nur einen kleinen Bereich des Diagramms sehen kann, funktioniert der Kopiervorgang wieder.
Meine aktuelles Vorgehen ist so, dass per Makro zum Diagramm hin und wieder zurückgescrollt wird, was aber doch nicht die Lösung sein kann, zumal das kurze Flackern echt nervt (mit der Funktion Application.ScreenUpdating tritt das Problem wieder auf).
Gibt es eine Lösung für das Problem?
Danke im Voraus
Thomas

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Wie sieht dein Code mit Fehlermeldung aus? - o.T.
01.04.2020 17:05:53
Beverly


AW: Wie sieht dein Code mit Fehlermeldung aus? - o.T.
02.04.2020 07:04:20
T
Der Code ist:
Sheets("Vergleich").ChartObjects("Diagramm_Vergleich_n").Copy
Der fehler lautet:
Laufzeitfehler '1004': Anwendungs- oder objektdefinierter Fehler
Das Diagramm ("Diagramm_Vergleich_n") liegt auf dem gleichen Arbeitsblatt ("Vergleich"), wo das Makro per Schaltfläche ausgelöst wird. Mir werden die Zeilen 1 bis 61 angezeigt, das Diagramm beginnt aber in Zeile 63. Und erst wenn ich auch nur einen Pixel vom Diagramm sehe, kann es über dieses Makro kopiert werden. Auffällig ist, dass das Diagramm erst geladen werden muss, man sieht erst einen grauen Platzhalter und dann erst werden die Linien angezeigt.
Andere Diagramm auf dem gleichen Arbeitsblatt, werden problemlos kopiert, die sind aber auch immer sichtbar.
Anzeige
Was passiert, wenn...
02.04.2020 08:26:39
Beverly
...du dein Blatt mal so scrollst, dass keins der Diagramme sichtbar ist und du ein anderes als das problematische kopierst - tritt der Fehler dann auch auf? Falls nicht, dann liegt es an dem Diagramm - ist es sehr kompliziert aufgebaut? Hilft vielleicht, wenn du anstelle ChartObjects("Diagramm_Vergleich_n") schreibst Shapes("Diagramm_Vergleich_n")?


AW: Was passiert, wenn...
02.04.2020 08:58:44
T
Ich habe alle Diagramme in einen nicht sichtbaren Bereich gezogen und dann tritt der Fehler auch bei diesen auf.
Im Anschluss habe ich "shapes" geschrieben und dann hat es geklappt.
Das Diagramm wird in ein Word-Dokument eingefügt. Hier müssen manchmal die Achsen (Minimum, Maximum) angepasst werden. Beim ersten Test hat das funktioniert. Was ist der Unterschied zwischen den Funktionen? Gibt es irgendwelche Einschränkungen?
Vielen Dank für deine Hilfe.
Anzeige
AW: Was passiert, wenn...
02.04.2020 09:31:17
Beverly
Unter Shape versteht man jegliches Objekt, welches sich in einem Tabellenblatt befindet, sei das ein Steuerelement, ein Bild, ein Diagrammobjekt usw. - es ist also sozusagen der "Oberbegriff".
Excel hat immer wieder mal Probleme beim Zeichnen von Diagrammen, insbesondere wenn sie kompliziert aufgebaut oder sehr groß sind, sodass das Diagramm sozusagen noch nicht exisitert, wenn es sich nicht im sichtbaren Blattbereich befindet - möglicherweise um Speicherplatz zu sparen(?). Der "Container", in dem das Diagramm aufgebaut werden soll, existiert jedoch bereits und das ist eben das Shape, welches mit dem Code angesprochen wird. Dass sich ein Diagramm in einem Shape-"Container" befindet erkennst du auch daran, dass der aufgezeichnete prinzipielle Code für das Erstellen eines Diagramm (seit Excel2007) wie folgt aussieht: ActiveSheet.Shapes.AddChart2(....) - ein eingebettetes Diagramm kann also (generell gesehen) sowohl als ChartObject als auch als Shape angesprochen werden.


Anzeige
AW: Was passiert, wenn...
02.04.2020 09:52:53
T
Na zum Glück verwehrt mir mein Arbeitgeber seit Jahren einen Excel-VBA-Lehrgang, wo man sowas mal lernen könnte...
Ich werde jetzt in jedem Makro den Shapes-Befehl einfügen, damit ich in Zukunft nicht wieder solche Probleme bekomme.
Vielen Dank nochmal.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige