Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1348to1352
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 Kopie; Bild einfügen

Diagramm Kopie; Bild einfügen
18.02.2014 15:00:52
Birgitp
Hallo an alle!
Ich habe folgendes Problem:
Ich kopiere aus einer Basisdatei zwei Datentabellen und zwei Tabellen mit jeweils einen Diagramm. Da sich die Basisdatei auf einen anderen Laufwerk befindet verliert Excel jedoch alle Bezüge zum Diagramm.
Nun wollte ich einfach die beiden Diagramme als Bild kopieren, da diese nicht weiter bearbeitet _
werden müssen - anbei mein Code dazu (inkl. der Kopie der Basisdatei falls das Problem doch _
hier liegt):

Sub Kopie_DW()
Dim tmp, DINKW As String
tmp = DateSerial(Year(Date + (8 - Weekday(Date)) Mod 7 - 3), 1, 1)
DINKW = ((Date - 7 - tmp - 3 + (Weekday(tmp) + 1) Mod 7)) \ 7 + 1 & "_" & Year(Date)
Sheets(Array("Tabelle 1", "Tabelle 2", "Diagr.1", "Diagr.2")).Copy
With ActiveWorkbook
.SaveAs Filename:="C:\Test\Test KW " _
& DINKW & " " & Format(Date, "DD.MM.YYYY") & ".xlsx"
Sheets("Diagr. 1").Activate
Dim picDiaObjekt As Picture
ActiveSheet.ChartObjects(1).Copy
Set picDiaObjekt = ActiveSheet.Pictures.Paste
.Close
End With
End Sub

Es erscheint jedoch diese Fehlermeldung:
Anwendungs- oder Objektdefinierter Fehler
Kann mir diesbezüglich jemand weiterhelfen?
Danke schon im Voraus!

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

Betreff
Datum
Anwender
Anzeige
AW: Diagramm Kopie; Bild einfügen
18.02.2014 16:08:59
Beverly
Hi,
was verstehst du unter "verliert Excel jedoch alle Bezüge zum Diagramm"? Meinst du damit, dass sich das Diagramm mit seinem Datenberich nach wie vor auf die Basis-Arbeitsmappe bezieht? Da anscheinend die Bezugstabellen mit kopiert werden (so wie ich das aus deiner Beschreibung interpretieren würde), kannst du doch die Bezüge einfach auf die kopierten Tabellen ändern (per VBA).


AW: Diagramm Kopie; Bild einfügen
18.02.2014 16:22:05
Birgitp
Hallo!
Danke für deine schnelle Antwort!
Ja genau das meine ich sorry war wohl etwas falsch formuliert.
Die Bezugsquellen werden mitkopiert in die neue Datei genau.
Wie kann ich die Bezüge automatisch mittels VBA ändern?
Das Problem ist dass immer neue Spalten/Zeilen hinzukommen bzw. sich der Datenbereich verschiebt -
zB in der Woche 1 ist der Bezug des Diagramms von B2:I2
in der Woche 2 ist der Bezug des Diagramms von C2:J2
Diese Änderungen werden jetzt manuell in der Basisdatei gemacht und geprüft.
Danke nochmals

Anzeige
AW: Diagramm Kopie; Bild einfügen
18.02.2014 16:39:11
Beverly
Hi Birgit,
es ware günstig, wenn du so eine Dateikopie mal hochladen könntest, damit man sich das mal ansehen kann, wie die Bezüge aussehen.


AW: Diagramm Kopie; Bild einfügen
18.02.2014 16:41:22
fcs
Hallo Birgit,
du musst auf korrekte/einheitliche Schreibweise der Blattnamen achten. Bei dir kommt "Diagr. 1" und "Diagr.1 vor.
Das löst aber einen anderen Fehler (Indexfehler) aus.
Bei mir unter Excel 2010 funktioniert dein Code mit folgenden Ergänzungen/Anpassungen.
Keine Ahnung, was bei dir den "Anwendungs- oder Objektdefinierter Fehler" auslöst.
Gruß
Franz
Sub Kopie_DW()
Dim tmp, DINKW As String
tmp = DateSerial(Year(Date + (8 - Weekday(Date)) Mod 7 - 3), 1, 1)
DINKW = ((Date - 7 - tmp - 3 + (Weekday(tmp) + 1) Mod 7)) \ 7 + 1 & "_" & Year(Date)
Sheets(Array("Tabelle 1", "Tabelle 2", "Diagr.1", "Diagr.2")).Copy
With ActiveWorkbook
.SaveAs Filename:="C:\Test\Test KW " _
& DINKW & " " & Format(Date, "DD.MM.YYYY") & ".xlsx"
Dim picDiaObjekt As Picture
Sheets("Diagr.1").Activate
ActiveSheet.ChartObjects(1).Copy
Set picDiaObjekt = ActiveSheet.Pictures.Paste
With picDiaObjekt
.Top = ActiveSheet.ChartObjects(1).Top
.Left = ActiveSheet.ChartObjects(1).Left
ActiveSheet.ChartObjects(1).Delete
End With
Sheets("Diagr.2").Activate
ActiveSheet.ChartObjects(1).Copy
Set picDiaObjekt = ActiveSheet.Pictures.Paste
With picDiaObjekt
.Top = ActiveSheet.ChartObjects(1).Top
.Left = ActiveSheet.ChartObjects(1).Left
ActiveSheet.ChartObjects(1).Delete
End With
.Close savechanges:=True
End With
End Sub

Anzeige
AW: Diagramm Kopie; Bild einfügen
19.02.2014 08:27:35
birgitp
Dankeschön Franz!
Mit deiner Anpassung hat es nun funktioniert!
Ihr macht uns das Leben wieder erheblich leichter!

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige