Clever-Excel-Forum

Normale Version: Bericht/Makro
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Werte Kollegen!

Vielen Dank für die Aufnahme ins Forum Smile

Kurz zu meinen Problem: Ich habe eine Excel-Datei Erstellt welche mithilfe von Makros Datensätze einliest und Diagramme auf verschiedene Tabellenblättern zeichnet. Nun möchte ich eine Art "Bericht" daraus machen - heißt ich will alle Diagramme der Datei auf ein Tabellenblatt verschieben/kopieren. Leider ist es mir noch nicht gelungen die Diagramme zu verschieben oder zu kopieren.

Bei dem Versuch Makros aufzunehmen und später auszuführen kommt immer eine Fehlermeldung schon nach wenigen Zeilen harkt es bei "ActiveChart.ChartArea.Select" .
Gibt es für dieses Problem eine Lösung?

Der "Bericht" könnte auch aus Word ausgegeben werden :)

Liebe Grüße, euer Katzi
Hey

ich bin mir nicht ganz sicher, ob dir das schon weiterhilft.

In angehängten Bsp. werden die Diagramme von Tab2 und Tab3 nach Tab1 kopiert wenn du in Tab1 den Butten klickst.


Code:
Private Sub CommandButton1_Click()
   Sheets("Tabelle2").Select
   ActiveSheet.ChartObjects("Diagramm 2").Activate
   ActiveSheet.ChartObjects("Diagramm 2").Activate
   ActiveChart.ChartArea.Copy
   Sheets("Tabelle1").Select
   Range("D6").Select
   ActiveSheet.Paste
   Sheets("Tabelle3").Select
   ActiveSheet.ChartObjects("Diagramm 2").Activate
   ActiveSheet.ChartObjects("Diagramm 2").Activate
   ActiveChart.ChartArea.Copy
   Sheets("Tabelle1").Select
   Range("D23").Select
   ActiveSheet.Paste
End Sub
Hallo Katzi!

Du schreibst, dass es bei Ausführen an der Stelle  "ActiveChart.ChartArea.Select"  harkt.
Gibt es eine genaue Fehlermeldung?

Zur Info:
ActiveChart.ChartArea.Select selektiert das innere einer Grafik, d.h. den Bereich der X & Y Achse, sowie der Grafikbalken.
Um den Befehl anzuwenden musst du sicherstellen, dass zuvor eine Grafik per Maus / Makro ausgewählt worden ist. Durch das Anklicken einer Grafik wird diese Grafik zum Activechart. Erst wenn Activechart durch dieses Auswählen definiert worden ist, kannst du mit Chartarea was machen.
Aber was passiert, wenn Activechart nicht gesetzt ist, d.h. zum Zeitpunkt des Befehls ist keine deiner Grafiken ausgewählt ?    .....   dann kommt ein Fehler.   (könnte ev. das dein Fehler sein? 
Fehlermeldung "Objektvariable oder with block nicht festgelegt"

Wenn ich aber deine Beschreibung lese, was du machen willst, dann habe ich den Verdacht, dass der fehlerhafte Befehl dich gar nicht weiterbringt. Ich denke, dass du vor deinem Activechart - Befehl zuerst sicherstellen solltest, dass eine Grafik wirklich selektiert ist.
z.B. durch:
ActiveSheet.ChartObjects("Diagramm 1").Activate
ActiveChart.PlotArea.Select
ActiveChart.ChartArea.Copy
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Paste

Gruß Thomas
Herzlichen Dank für die rasche Hilfe!

Funktioniert jetzt super! :18:

D A N K E!!!!!!!!!!! Heart